角色一直存在各個資料庫中,比如 SQL Server、Oracle 等,MySQL 自從版本 8.0 release,引入了角色這個概念。
角色的概念
角色就是一組針對各種資料庫許可權的集合。比如,把一個角色分配給一個使用者,那這個使用者就擁有了這個角色包含的所有許可權。一個角色可以分配給多個使用者,另外一個使用者也可以擁有多個角色,兩者是多對多的關係。不過 MySQL 角色目前還沒有提供類似於其他資料庫的系統預分配的角色。比如某些資料庫的 db_owner、 db_datareader 、 db_datawriter 等等。那接下來我分幾個方面,來示例說明角色的使用以及相關注意事項。
示例 1:一個完整角色的授予步驟
用管理員建立三個角色:db_owner, db_datareader, db_datawriter
建立三個普通使用者,分別為 ytt1、ytt2、ytt3。
分別授予這三個使用者對應的角色。
以上是角色授予的一套完整步驟。那上面有點非常規的地方是啟用角色這個步驟。MySQL 角色在建立之初預設是沒有啟用的,也就是說建立角色,並且給一個使用者特定的角色,這個使用者其實並不能直接使用這個角色,除非激活了才可以。
示例 2:一個使用者可以擁有多個角色
示例 3:使用者在當前 session 裡角色互換
其實意思是說,使用者連線到 MySQL 伺服器後,可以切換當前的角色列表,比如由 db_owner 切換到 db_datareader。
示例 4:關於角色的兩個引數
activate_all_roles_on_login:是否在連線 MySQL 服務時自動啟用角色mandatory_roles:強制所有使用者預設角色
示例 5 :create role 和 create user 都有建立角色許可權,兩者有啥區別?
以下分別建立兩個使用者 ytt8、ytt9,一個給 create role,一個給 create user 許可權。
那這裡其實看到 create user 包含了 create role,create user 即可以建立使用者,也可以建立角色。
示例 6:MySQL 使用者也可以當角色來用
示例 7:角色的撤銷
角色撤銷和之前許可權撤銷類似。要麼 revoke,要麼刪除角色,那這個角色會從所有擁有它的使用者上移除。
至此,我分了 7 個目錄說明了角色在各個方面的使用以及注意事項,希望對大家有幫助。
角色一直存在各個資料庫中,比如 SQL Server、Oracle 等,MySQL 自從版本 8.0 release,引入了角色這個概念。
角色的概念
角色就是一組針對各種資料庫許可權的集合。比如,把一個角色分配給一個使用者,那這個使用者就擁有了這個角色包含的所有許可權。一個角色可以分配給多個使用者,另外一個使用者也可以擁有多個角色,兩者是多對多的關係。不過 MySQL 角色目前還沒有提供類似於其他資料庫的系統預分配的角色。比如某些資料庫的 db_owner、 db_datareader 、 db_datawriter 等等。那接下來我分幾個方面,來示例說明角色的使用以及相關注意事項。
示例 1:一個完整角色的授予步驟
用管理員建立三個角色:db_owner, db_datareader, db_datawriter
建立三個普通使用者,分別為 ytt1、ytt2、ytt3。
分別授予這三個使用者對應的角色。
以上是角色授予的一套完整步驟。那上面有點非常規的地方是啟用角色這個步驟。MySQL 角色在建立之初預設是沒有啟用的,也就是說建立角色,並且給一個使用者特定的角色,這個使用者其實並不能直接使用這個角色,除非激活了才可以。
示例 2:一個使用者可以擁有多個角色
示例 3:使用者在當前 session 裡角色互換
其實意思是說,使用者連線到 MySQL 伺服器後,可以切換當前的角色列表,比如由 db_owner 切換到 db_datareader。
示例 4:關於角色的兩個引數
activate_all_roles_on_login:是否在連線 MySQL 服務時自動啟用角色mandatory_roles:強制所有使用者預設角色
示例 5 :create role 和 create user 都有建立角色許可權,兩者有啥區別?
以下分別建立兩個使用者 ytt8、ytt9,一個給 create role,一個給 create user 許可權。
那這裡其實看到 create user 包含了 create role,create user 即可以建立使用者,也可以建立角色。
示例 6:MySQL 使用者也可以當角色來用
示例 7:角色的撤銷
角色撤銷和之前許可權撤銷類似。要麼 revoke,要麼刪除角色,那這個角色會從所有擁有它的使用者上移除。
至此,我分了 7 個目錄說明了角色在各個方面的使用以及注意事項,希望對大家有幫助。