日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

MySQL 角色(role)功能介紹

瀏覽:56日期:2023-10-03 16:38:05
前言:

上篇文章,我們介紹了 MySQL 權(quán)限管理相關(guān)知識(shí)。當(dāng)數(shù)據(jù)庫實(shí)例中存在大量的庫或用戶時(shí),權(quán)限管理將會(huì)變得越來越繁瑣,可能要頻繁進(jìn)行權(quán)限變更。MySQL 8.0 新增了 role 功能,使得權(quán)限管理更加方便,本篇文章我們來看下 8.0 下的 role 功能。

1. role 簡(jiǎn)介

role 角色功能對(duì)于 Oracle 數(shù)據(jù)庫來說不算是什么特殊,在 Oracle 中經(jīng)常被用到。MySQL 8.0 版本終于新增了 role 功能,為數(shù)據(jù)庫用戶權(quán)限管理提供了一種新思路。

role 可以看做一個(gè)權(quán)限的集合,這個(gè)集合有一個(gè)統(tǒng)一的名字 role 名。可以給多個(gè)數(shù)據(jù)庫用戶授予同個(gè) role 的權(quán)限,權(quán)限變更可直接通過修改 role 來實(shí)現(xiàn),不需要每個(gè)用戶一個(gè)一個(gè)的去變更,方便運(yùn)維和管理。role 可以創(chuàng)建、刪除、修改并作用到它管理的用戶上。

下面我們具體來體驗(yàn)下 role 角色功能:

# 創(chuàng)建rolemysql> create role ’dev_role’;Query OK, 0 rows affected (0.15 sec)# 給role授予權(quán)限mysql> grant select on db1.* to ’dev_role’@’%’;Query OK, 0 rows affected (0.12 sec)# 查看role的權(quán)限mysql> show grants for ’dev_role’@’%’;+-------------------------------------------+| Grants for dev_role@% |+-------------------------------------------+| GRANT USAGE ON *.* TO `dev_role`@`%` || GRANT SELECT ON `db1`.* TO `dev_role`@`%` |+-------------------------------------------+# 創(chuàng)建用戶 并賦予角色權(quán)限mysql> create user ’dev1’@’%’ identified by ’123456’;Query OK, 0 rows affected (0.68 sec)mysql> grant ’dev_role’ to ’dev1’@’%’;Query OK, 0 rows affected (0.38 sec)# 查看用戶權(quán)限mysql> show grants for ’dev1’@’%’;+------------------------------------+| Grants for dev1@% |+------------------------------------+| GRANT USAGE ON *.* TO `dev1`@`%` || GRANT `dev_role`@`%` TO `dev1`@`%` |+------------------------------------+2 rows in set (0.63 sec)# 使用dev1用戶登錄root@localhost ~]# mysql -udev1 -p123456mysql> show databases;+--------------------+| Database |+--------------------+| information_schema |+--------------------+1 row in set (0.34 sec)mysql> select CURRENT_ROLE();+----------------+| CURRENT_ROLE() |+----------------+| NONE |+----------------+1 row in set (0.59 sec)

什么情況?貌似和我們想象不同,賦予用戶某個(gè)角色權(quán)限后,該用戶并沒有獲得相應(yīng)權(quán)限。

出現(xiàn)上述情況的原因是,在用戶會(huì)話中,授予該用戶的角色處于非活動(dòng)狀態(tài)。只有授予的角色在會(huì)話中處于活動(dòng)狀態(tài)時(shí),該用戶才擁有此角色的權(quán)限,要確定當(dāng)前會(huì)話中哪些角色處于活動(dòng)狀態(tài),可以使用 CURRENT_ROLE() 函數(shù)。

# 使用 set default role 命令激活角色mysql> SET DEFAULT ROLE ALL TO dev1;Query OK, 0 rows affected (0.77 sec)# 重新登錄 發(fā)現(xiàn)權(quán)限正常root@localhost ~]# mysql -udev1 -p123456mysql> select CURRENT_ROLE();+----------------+| CURRENT_ROLE() |+----------------+| `dev_role`@`%` |+----------------+1 row in set (0.57 sec)mysql> show databases;+--------------------+| Database |+--------------------+| db1|| information_schema |+--------------------+2 rows in set (1.05 sec)

除了使用 set default role 命令激活角色外,還可以修改系統(tǒng)變量 activate_all_roles_on_login ,該變量決定是否自動(dòng)激活 role ,默認(rèn)為 OFF 即不自動(dòng)激活,建議將該變量改為 ON ,這樣以后賦予角色給新用戶后就不需要再手動(dòng)激活了。

# 查看 activate_all_roles_on_login 變量mysql> show variables like ’activate_all_roles_on_login’;+-----------------------------+-------+| Variable_name | Value |+-----------------------------+-------+| activate_all_roles_on_login | OFF |+-----------------------------+-------+1 row in set (1.53 sec)# 啟用該變量 先動(dòng)態(tài)啟用 之后可以將此參數(shù)加入my.cnf配置文件中mysql> set global activate_all_roles_on_login = on;Query OK, 0 rows affected (0.50 sec)# 之后角色就會(huì)自動(dòng)激活mysql> create user ’dev2’@’%’ identified by ’123456’;Query OK, 0 rows affected (0.68 sec)mysql> grant ’dev_role’ to ’dev2’@’%’;Query OK, 0 rows affected (0.38 sec)root@localhost ~]# mysql -udev2 -p123456mysql> select CURRENT_ROLE();+----------------+| CURRENT_ROLE() |+----------------+| `dev_role`@`%` |+----------------+1 row in set (0.57 sec)mysql> show databases;+--------------------+| Database |+--------------------+| db1|| information_schema |+--------------------+2 rows in set (1.05 sec) 2. role 相關(guān)操作

上面我們介紹了創(chuàng)建角色及給用戶授予角色權(quán)限,關(guān)于 role 相關(guān)操作還有很多,我們接著來看下。

# 變更角色權(quán)限mysql> grant select on db2.* to ’dev_role’@’%’;Query OK, 0 rows affected (0.33 sec)# 擁有該角色的用戶 重新登錄后權(quán)限也會(huì)對(duì)應(yīng)變化root@localhost ~]# mysql -udev1 -p123456mysql> show databases;+--------------------+| Database |+--------------------+| db1|| db2|| information_schema |+--------------------+3 rows in set (2.01 sec)# 回收角色權(quán)限mysql> revoke SELECT ON db2.* from ’dev_role’@’%’;Query OK, 0 rows affected (0.31 sec)# 撤銷用戶的角色mysql> revoke ’dev_role’@’%’ from ’dev1’@’%’;Query OK, 0 rows affected (0.72 sec)mysql> show grants for ’dev1’@’%’;+----------------------------------+| Grants for dev1@%|+----------------------------------+| GRANT USAGE ON *.* TO `dev1`@`%` |+----------------------------------+1 row in set (1.06 sec)# 刪除角色 (刪除角色后 對(duì)應(yīng)的用戶也會(huì)失去該角色的權(quán)限)mysql> drop role dev_role;Query OK, 0 rows affected (0.89 sec)

我們還可以通過 mandatory_roles 變量來配置強(qiáng)制性角色。使用強(qiáng)制性角色,服務(wù)器會(huì)為全部的用戶戶默認(rèn)賦予該角色,而不需要顯示執(zhí)行授予角色。可以使用 my.cnf 文件或者使用 SET PERSIST 進(jìn)行配置,例如:

# my.cnf 配置[mysqld]mandatory_roles=’dev_role’# set 更改變量SET PERSIST mandatory_roles = ’dev_role’;

需要注意的是,配置在 mandatory_roles 中的角色不能撤銷其權(quán)限,也不能刪除。

總結(jié):

關(guān)于 role 角色相關(guān)知識(shí),簡(jiǎn)單總結(jié)幾點(diǎn)如下:

role 是一個(gè)權(quán)限的集合,可以被賦予不同權(quán)限。 開啟 activate_all_roles_on_login 變量,才可以自動(dòng)激活角色。 一個(gè)用戶可以擁有多個(gè)角色,一個(gè)角色也可以授予多個(gè)用戶。 角色權(quán)限變化會(huì)應(yīng)用到對(duì)應(yīng)用戶。 刪除角色,則擁有此角色的用戶也會(huì)喪失此角色的權(quán)限。 可設(shè)置強(qiáng)制性角色,使得所有用戶都擁有此角色的權(quán)限。 角色管理和用戶管理相似,只是角色不能用于登錄數(shù)據(jù)庫。

以上就是MySQL 角色(role)功能介紹的詳細(xì)內(nèi)容,更多關(guān)于MySQL 角色(role)功能的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: MySQL 數(shù)據(jù)庫
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
久久久久久网| 日韩美女国产精品| 香蕉久久久久久久av网站| 九九久久国产| 麻豆精品一区二区综合av| 国产欧美69| 亚洲精品日本| 日韩成人av影视| 国产图片一区| 国产精品巨作av| 国产黄色精品| 日本一区二区免费高清| 精品视频亚洲| 日韩一区电影| 欧美 日韩 国产一区二区在线视频| 久久久精品网| 日韩高清不卡| 亚洲一区二区免费看| 午夜视频精品| 一区二区日韩免费看| 免费久久99精品国产| 亚洲高清av| 女同性一区二区三区人了人一| 欧美中文字幕一区二区| 免费看的黄色欧美网站| 国产亚洲字幕| 欧美一区二区三区高清视频| 亚洲专区视频| 久久影院午夜精品| 亚洲毛片一区| 成人日韩在线观看| 一区二区三区网站| 国产成人免费视频网站视频社区| 日韩大片在线播放| 久久亚洲不卡| 国产高潮在线| 亚洲欧美日韩视频二区| 麻豆国产欧美日韩综合精品二区| 宅男在线一区| 精品一区二区三区中文字幕| 亚洲欧美日韩国产一区二区| 美女精品久久| 午夜性色一区二区三区免费视频| 高清久久精品| 国产欧美一区二区精品久久久| 午夜久久影院| 麻豆网站免费在线观看| 91精品国产一区二区在线观看| 日本在线高清| 国产欧美三级| 亚洲理论在线| 日韩国产欧美| 美女视频一区在线观看| 中文字幕日本一区二区| 婷婷亚洲五月| 久久网站免费观看| 日韩免费看片| 久久影院资源站| 国产欧美另类| 国产精品一区二区三区av| 日韩欧美三区| 日韩av中文在线观看| 亚洲一区不卡| 视频一区在线播放| 男女激情视频一区| 日韩在线观看一区二区| 99精品国产一区二区三区| 国产在线看片免费视频在线观看| 久久精品免视看国产成人| 美女在线视频一区| 国产aⅴ精品一区二区四区| 国产成人77亚洲精品www| 精品欠久久久中文字幕加勒比| 久久精品二区亚洲w码| 91青青国产在线观看精品| 精品视频在线一区二区在线| 美女毛片一区二区三区四区最新中文字幕亚洲 | 日韩激情网站| 欧美.日韩.国产.一区.二区 | 亚洲三级av| 综合干狼人综合首页| 蜜桃视频在线观看一区二区| 先锋亚洲精品| 欧美日韩一区二区三区不卡视频 | 久久久久国产| 欧美专区18| 亚洲一区欧美| 91精品麻豆| 欧美13videosex性极品| 合欧美一区二区三区| 日av在线不卡| 国产精品久久乐| 久久九九电影| 日韩国产高清在线| 天堂中文av在线资源库| 亚洲欧美日韩视频二区| 久久av中文| 天堂va蜜桃一区二区三区| 欧美黄色一区| 亚洲一区日韩| 高清久久一区| 一区二区视频欧美| 你懂的国产精品永久在线| 欧美日韩四区| 福利片在线一区二区| 一区二区亚洲视频| 亚洲天堂免费电影| 国产日韩中文在线中文字幕| 蜜桃tv一区二区三区| 国产麻豆一区| 亚洲伊人精品酒店| 欧美中文字幕一区二区| 麻豆久久一区二区| 日韩一区二区三免费高清在线观看| 高清不卡一区| 国产精品一页| 不卡一区2区| 精品中文字幕一区二区三区| 免费观看在线综合| 伊人精品一区| 久久久久99| 日韩欧美国产精品综合嫩v| 日韩欧美在线精品| 亚洲午夜免费| 日日夜夜免费精品视频| 妖精视频成人观看www| 成人午夜国产| 久久影院一区| 久久精品免费一区二区三区 | 国产精品毛片视频| 亚洲精品第一| 日韩成人av影视| 亚洲精品成人一区| 亚洲精品少妇| 69精品国产久热在线观看| 首页国产欧美久久| 蜜芽一区二区三区| 综合一区av| 欧美日韩一区二区三区在线电影| 日本亚洲三级在线| 日韩精彩视频在线观看| 欧美日韩精品一区二区三区在线观看| 日韩不卡免费视频| 久久国内精品视频| 麻豆成人av在线| 日本久久成人网| 午夜精品一区二区三区国产| 国产一区久久| 亚洲三级av| 久久99精品久久久久久园产越南| 91中文字幕精品永久在线| 日韩综合一区| 夜久久久久久| 麻豆国产欧美一区二区三区 | 久久亚洲不卡| 亚洲精品国模| 日韩成人精品一区二区| 亚洲激情久久| 日韩精品一区二区三区av| 久久精品国产99| 99综合视频| 老牛国内精品亚洲成av人片| 久久亚洲国产| 国产欧美日韩视频在线| 久久免费国产| 蜜桃免费网站一区二区三区| 麻豆精品蜜桃视频网站| 在线一区免费观看| 国产精品成人a在线观看| 免费精品视频最新在线| 国产精品久久久久蜜臀| 日韩三区四区| 国内精品福利| 久久精品国产亚洲aⅴ| 蜜桃av一区| 蜜桃成人av| 欧美精品二区| 婷婷综合六月| 免费不卡在线观看| 欧美丰满日韩| 日韩精品一二三四| 色综合www| 国产精品久久久亚洲一区| 石原莉奈在线亚洲三区| 九九精品调教| 国产传媒av在线| 久久激情五月激情| 蜜臀91精品一区二区三区| 午夜欧美精品久久久久久久| 成午夜精品一区二区三区软件| 日韩国产在线不卡视频| 在线免费观看亚洲| 欧美.日韩.国产.一区.二区 | 日韩一区二区久久| 日韩久久精品| 国产精品麻豆久久| 精品成人18| 久久久久免费| 久久久久久自在自线| 成人国产精品一区二区网站|