[英]Amazon AWS RDS MySQL Role Privileges not cascading
我有一個MySQL 8.0.13的RDS實例,試圖在該實例中實現基於角色的權限,因此不必單獨創建/更改每個用戶。
這是我正在使用的代碼...
GRANT ROLE_ADMIN ON *.* TO mymasteruser; -- Need to do this or line 5 doesn't work.
CREATE ROLE 'TEST_ROLE';
GRANT ALL PRIVILEGES ON test_data.* TO 'TEST_ROLE';
CREATE USER 'dev3'@'%' IDENTIFIED BY '$uper$ecretP@ssw0rd';
GRANT TEST_ROLE TO 'dev3'@'%';
FLUSH PRIVILEGES;
運行上面的代碼時沒有收到任何錯誤消息,但是當我嘗試使用dev3登錄數據庫時,用戶'dev3'@'%'訪問數據庫'test_data'的訪問被拒絕。
當我跑步
SHOW GRANTS FOR TEST_ROLE
我懂了
GRANT USAGE ON *.* TO `TEST_ROLE`@`%`
GRANT ALL PRIVILEGES ON `test_data`.* TO `TEST_ROLE`@`%`
當我跑步
SHOW GRANTS FOR 'dev3'@'%'
我懂了
GRANT USAGE ON *.* TO `dev3`@`%`
GRANT `TEST_ROLE`@`%` TO `dev3`@`%`
在我看來,所有正確的權限都已到位,但我仍然遇到“訪問被拒絕”的問題。
我可以像平常一樣授予該用戶個人訪問權限,而不僅僅是通過角色。
我究竟做錯了什么?
謝謝
經過一些研究,答案似乎正在運行
SET DEFAULT ROLE 'TEST_ROLE' TO 'dev3'@'%';
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.