TL;DR: 在 Google Cloud Console 中创建用户后,不要忘记 REVOKE 'cloudsqlsuperuser'@'%' FROM 'your-user'@'%';如果您只想让该用户访问特定模式。
通过 Google Cloud Console 创建 MySQL 用户会自动添加 cloudsqlsuperuser 角色,该角色允许用户访问该 MySQL 实例上的所有内容:
显示 'user-from-gcp-console'@'%' 的补助金; +------------------------------------------------ ------------+ |授予 user-from-gcp-console@% | +------------------------------------------------ ------------+ |将 *.* 的使用权授予 `user-from-gcp-console`@`%` | |将 `cloudsqlsuperuser`@`%` 授予 `user-from-gcp-console`@`%`| +------------------------------------------------ ------------+
Google 在其知识库的关于 MySQL 用户文章中提到了这一点。
要创建只能访问一种架构的用户,您需要通过运行以下命令来创建没有控制台的用户:
创建用户“您的用户”@“%”已识别 使用“mysql_native_password” BY ''; 将 your-schema.* 上的所有内容授予 'your-user'@'%';
或者通过控制台创建用户,但不要忘记删除 cloudsqlsuperuser 角色:
// 通过 Google Cloud Console 创建用户 从“您的用户”@“%”中撤销“cloudsqlsuperuser”@“%”; 将 your-schema.* 上的所有内容授予 'your-user'@'%';
结束语
- 用户由用户名和主机唯一标识。 % 代表任何主机,当您将用户访问限制为仅某些主机时(例如 your-user%localhost),命令可能会有所不同。
- 您可以将 Cloud SQL 代理与 IAM 结合使用。请阅读 IAM 身份验证文章了解更多信息。
- 现在还有 Cloud SQL Studio [预览版],可能会派上用场。
- 有关 MySQL 数据库中用户管理的更多信息请点击此处。
以上就是创建只能访问 CloudSQL 中一个架构的用户的详细内容,更多请关注php中文网其它相关文章!
版权声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系 yyfuon@163.com