两个相关的问题:使用Server 2012,如何确定谁/什么拥有用户,以及如何为用户设置所有权(如果有的话)?
添加几个问题:“如何”以上两种登录方式。
发布于 2014-06-24 17:54:59
除服务器角色外,sys.server_principals owning_principal_id为空。固定服务器角色属于'sa‘(服务器principal_id = 1),不能更改所有权。可以使用以下方法创建新的服务器角色并设置拥有主体:
CREATE SERVER ROLE role_name [ AUTHORIZATION server_principal ]sys.database_principals固定数据库角色属于dbo (数据库principal_id = 1),不能更改所有权。但是可以创建其他数据库角色,并将其分配给拥有的principal_id。
CREATE ROLE role_name [ AUTHORIZATION server_principal ]ALTER角色和数据库级ALTER角色都只更改成员资格或角色名称。
可以通过使用ALTER授权分配一个新的所有者主体来更改授权(只要您拥有所需的权限)。示例:
ALTER AUTHORIZATION ON ROLE::MyRole TO [Domain\User];请参阅ALTER授权的语法:http://msdn.microsoft.com/en-us/library/ms187359.aspx
发布于 2014-06-24 14:42:47
您可以看到来自server_principals表的登录,此外,还可以看到MSSQL附带的多个存储过程,以显示成员身份或用户角色信息。以下两个链接很好地解释了这两个问题:
SQL登录- sys.server_principals http://msdn.microsoft.com/en-us/library/ms188786.aspx
数据库级角色http://msdn.microsoft.com/en-us/library/ms189121.aspx
然后将上述信息的记录ID绑定到数据库对象中,以显示所有权信息。
https://dba.stackexchange.com/questions/68930
复制相似问题