应该授予远程用户啥权限来对“数据库”做任何事情而不做其他事情?

Posted

技术标签:

【中文标题】应该授予远程用户啥权限来对“数据库”做任何事情而不做其他事情?【英文标题】:What permissions should be granted to the remote user to do anything with "the database" and no other?应该授予远程用户什么权限来对“数据库”做任何事情而不做其他事情? 【发布时间】:2010-06-19 15:07:22 【问题描述】:

应授予远程用户哪些权限以使用SQL Server Management Studio Express 对 SQL Server 2005 Express 中的数据库“123”执行任何操作,以使远程用户无法对任何其他数据库执行任何操作?

我还希望远程用户不能看到其他数据库。 即“123”用于用户使用SQL 身份验证方法登录。 是私人的。

我正在使用 Web 和数据库服务器的 SQL Server Management Studio Express 2005。

网络服务器正在连接数据库服务器。

“尼克·托马斯的回答者问什么是什么意思,但后来删除了他的回答,所以这是用户可以做的任何事情对其他回答者的意义”。

""做任何事情的意思是:创建表、删除表、编辑/更新表、插入、提取以及所有与表相关的功能。 但是没有用户不能删除数据库。应该限制​​数据库删除。

在表上插入、更新和删除。

表创建、更改和删除。

表拷贝、数据库备份。 ""

【问题讨论】:

【参考方案1】:

看看this closely related (identical?) question。

【讨论】:

谢谢。权限呢?授予用户?对他的数据库做任何事情。及其相关但不完全相同。谢谢你 就数据库而言,听起来您可以将所有者授予该用户。通常,我会仔细决定用户可能担任的所有角色。很多时候,我有外部报告/集成用户担任数据阅读者角色,支持人员担任自定义管理角色,让他们进行特殊维护,应用程序管理员担任管理角色适合应用程序的角色(在仅限管理员的 SP 上执行,如添加新用户、批准等)和仅限用户角色的应用程序用户(在所有应用程序 SP 上执行,如添加订单、添加产品等)。通常很少有表访问权限。 是的,这很小心,只有必要的权限,但是如何,在 sql server management studio 中有很多框要打勾!。一个盒子就不能解决问题吗?添加任何编辑。还评论请根据用户“can dos”的要求指导我,谢谢编辑是“””做任何事情意味着 - 创建表,删除表,编辑/更新表,插入,提取以及所有与表上的功能相关的内容。但没有用户不能删除数据库,应该限制数据库的删除。在表上插入更新删除创建更改删除、表复制、数据库备份。""" @user287745 我觉得owner就够了。

以上是关于应该授予远程用户啥权限来对“数据库”做任何事情而不做其他事情?的主要内容,如果未能解决你的问题,请参考以下文章

给用户授予权限时应该尽量避免ANY系统权限

Swift - bool 的值被改变而不做任何事情?找不到修改的地方?

Linux学习笔记之权限的管理

PostgreSQL:将所有权限授予 PostgreSQL 数据库上的用户

授予数据库中的所有权限有啥作用?

授予用户权限以仅查看 MySQL 视图而不查看其他内容