【问题标题】:mysql: database specific user permission delegation with grant optionmysql:具有授予选项的数据库特定用户权限委托
【发布时间】:2010-11-04 21:10:40
【问题描述】:

我在朋友之间设置了一个共享的网络服务器。每个网站都有自己的数据库。我希望能够将每个数据库的用户管理委托给数据库的所有者。这样一来,他们就可以为其 Web 应用程序创建帐户以访问其特定表,而不会在特定应用程序遭到入侵时四处游荡。

为了通过示例进一步说明,我想要这样的东西:

Database server at : db.hosting.coop
db root user : root@db.hosting.coop <full permissions as root>

website and database 1: foo.com
foo.com db user : foo@db.hosting.coop <full permissions on database foo, with ability to grant user access to database foo, granted by root@db.hosting.coop>
foo.coms rails app db user : foorails@localhost <select,insert,update,delete on foo.*, granted by foo@db.hosting.coop>

website and database 2: bar.com
bar.com db user : bar@% <full permissions on database foo, with grant, granted by root@db.hosting.coop>
bar.coms php app db user : bar_website@localhost <select,insert,update,delete on bar.*, granted by bar@db.hosting.coop>

【问题讨论】:

    标签: mysql-management


    【解决方案1】:

    作为根:

    GRANT CREATE USER ON *.* TO 'foo'@'%';
    GRANT ALL PRIVILEGES ON `foo.com`.* TO 'foo'@'%' WITH GRANT OPTION;
    

    作为 foo:

    CREATE USER 'foorails'@'%' IDENTIFIED BY 'secret';
    GRANT SELECT ON `foo.com`.* TO 'foorails'@'%'
    

    其他人也一样

    【讨论】:

    • 太棒了。谢谢你。完全按照我的希望工作。
    猜你喜欢
    • 1970-01-01
    • 2016-03-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-15
    相关资源
    最近更新 更多