Mysql

什麼是數據庫、Oracle 和 MySQL 中的定義者和呼叫者權限?

  • April 16, 2021

什麼是數據庫、Oracle 和 MySQL 中的定義者和呼叫者權限?我只是不明白。

我們舉一個簡單的例子:

您可以使用“定義者權限”來執行此過程 - 這是 Oracle 中的預設設置。

CREATE PROCEDURE DEL_EMP AS
BEGIN
  DELETE FROM EMP;
END;

另一個呼叫這個過程的使用者只需要EXECUTE這個過程的權限,不需要這個使用者DELETE對錶 EMP 有權限。

過程在過程所有者(或定義它的使用者,因此稱為“定義者”權限)的許可下執行。

“Inovker 權利”則相反。喜歡成功執行此過程的使用者必須具有EXECUTE此過程 DELETE權限和表 EMP 的權限。

關於定義者和呼叫者權限還有一些要點,但對於一般理解,這應該足夠了。

引用自:https://dba.stackexchange.com/questions/59887