首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在仅设置表特权的Connect上拒绝权限

问在仅设置表特权的Connect上拒绝权限
EN

Server Fault用户
提问于 2011-08-16 19:06:30
回答 2查看 1.1K关注 0票数 2

(最初在StackOverflow上被问到,但有人建议我在这里问)- MySQL 5.1.41社区(Windows 2003) -.NET/Connector6.1.3.0

我刚刚创建了一个新用户,而不是授予模式特权,而是只授予特定表的权限。换句话说,不存在全局或架构级别的权限集,只有权限集是针对两个特定表的。这似乎是一个完全可以接受的策略,根据我已经准备好的内容,MySQL将搜索:

  1. 全局
  2. 模式/数据库
  3. 表格
  4. 列

以获得适当的权限。但是,当我试图使用这个新的用户帐户打开到服务器的连接时,我会收到一个拒绝权限的错误。

拒绝用户'xxxxxx'@'%‘访问数据库’xxxxxx‘

我试过几个不同的客户,结果是一样的。我还检查了服务器日志,没有其他详细信息,只有以下内容:

110816 10:23:15543连接xxxxxx@192.168.1.xxx在xxxxxxxx543上拒绝用户“xxxxx”@‘%’到数据库‘xxxxxx’的访问

如果我允许对所讨论的模式进行SELECT,我可以很好地连接。我是误解了许可制度的运作方式,还是应该像我想的那样运作?

EN

回答 2

Server Fault用户

发布于 2011-08-16 21:46:54

如果将手动插入的用户添加到mysql.user中,则需要在与该用户一起登录之前运行flush privileges。如果使用GRANT创建用户,则会自动为您完成刷新。

下面是一个插入示例:

代码语言:javascript
复制
INSERT INTO mysql.user (user, host, password) 
  VALUES ('user', 'localhost', password('yourpassword'));
票数 2
EN

Server Fault用户

发布于 2011-08-17 04:48:51

错误消息告诉您需要知道的内容:无法访问数据库。如果不访问封闭的数据库,则无法访问表,因此向后者授予适当的权限。这有点像被授予对服务器上的文件的访问权,但拒绝了对服务器本身的访问。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/301760

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档