【问题标题】:"public" role access in SQL ServerSQL Server 中的“公共”角色访问
【发布时间】:2010-09-29 10:50:27
【问题描述】:

谁能告诉我public在sql server中有什么权限。

谢谢

【问题讨论】:

  • 每个 SQL Server 登录都属于公共服务器角色。当服务器主体未被授予或拒绝对安全对象的特定权限时,用户将继承授予该对象上的 public 的权限。仅当您希望对象可供所有用户使用时,才为任何对象分配公共权限。您不能公开更改会员资格。注意:public 的实现方式与其他角色不同,可以授予、拒绝或撤销公共固定服务器角色的权限。

标签: sql-server permissions


【解决方案1】:

默认情况下,公共角色不能做任何事情*。如果希望每个人都拥有这些权限,一些 DBA 将授予公共角色额外的权限(查看或更改数据或运行存储的过程)。

* -- 嗯,几乎任何东西。他们可以查看一些系统视图并运行不涉及任何数据的查询(例如“select 'a'”)。

要查看特定权限,请右键单击角色(在 SQL 2005 中,它是数据库 > {您的数据库} > 安全 > 角色 > 数据库角色)并选择属性。

编辑:您可能还想查看服务器级公共角色。位于安全 > 服务器角色 > 公共

【讨论】:

    【解决方案2】:

    每个数据库用户都属于公共数据库角色。

    当用户没有被授予或拒绝对安全对象的特定权限时,用户将继承授予 public 对该对象的权限。

    公共服务器角色被授予 VIEW ANY DATABASE 权限和默认端点上的 CONNECT 权限。

    其实,公共服务器角色并不是一个固定的服务器角色,因为权限是可以改变的,但是每个用户都默认属于公共数据库角色。

    你可以在这里查看:https://msdn.microsoft.com/en-us/library/ms188659.aspx

    【讨论】:

      猜你喜欢
      • 2010-09-27
      • 1970-01-01
      • 2018-05-13
      • 2012-07-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-15
      相关资源
      最近更新 更多