加入角色

适用于:SQL ServerAzure SQL 数据库Azure SQL 托管实例Azure Synapse AnalyticsAnalytics Platform System (PDW)

本主题将介绍如何使用 SQL Server Management Studio 或 Transact-sql 向 SQL Server 中的登录名和数据库用户分配角色。 可使用 SQL Server 中的角色高效地管理权限。 将权限分配给角色,然后在角色中添加和删除用户以及登录名。 通过使用角色,不必针对各个用户单独维护权限。

SQL Server 支持四种类型的角色。

  • 固定服务器角色

  • 用户定义的服务器角色

  • 固定数据库角色

  • 用户定义的数据库角色

SQL Server 中会自动提供固定角色。 固定角色具有完成常见任务必需的权限。 有关固定角色的详细信息,请参阅以下链接。 用户定义的角色由您创建,并可使用选择的权限进行自定义。 有关用户定义角色的详细信息,请参阅以下链接。

本主题内容

开始之前

限制和局限

  • 更改数据库角色的名称不会更改角色的 ID 号、所有者或权限。

  • 在 sys.database_role_members 和 sys.database_principals 目录视图中可以查看数据库角色。

安全性

权限

要求对数据库具有 ALTER ANY ROLE 权限、对角色具有 ALTER 权限或具有 db_securityadmin中的成员身份。

使用 SQL Server Management Studio

注意

本部分中的两个过程仅适用于 SQL Server。

向固定服务器角色添加成员

  1. 在“对象资源管理器”中,展开要在其中编辑固定服务器角色的服务器。

  2. 展开 “安全性” 文件夹。

  3. 展开 “服务器角色” 文件夹。

  4. 右键单击要编辑的角色,然后选择“属性”

  5. 在“服务器角色属性 - server_role_name”对话框的“成员”页中单击“添加”

  6. 在“选择服务器登录名或角色”对话框的“输入要选择的对象名称(示例)”下,输入要添加到该服务器角色的登录名或服务器角色。 或者,单击“浏览...”,然后在“浏览对象”对话框中选择任意对象或所有可用对象。 单击“确定”以返回“服务器角色属性 - server_role_name”对话框。

  7. 选择“确定”

向用户定义的数据库角色添加成员

  1. 在“对象资源管理器”中,展开要在其中编辑用户定义的数据库角色的服务器。

  2. 展开 “数据库” 文件夹。

  3. 展开要在其中编辑用户定义的数据库角色的数据库。

  4. 展开 “安全性” 文件夹。

  5. 展开 “角色” 文件夹。

  6. 展开“数据库角色”文件夹。

  7. 右键单击要编辑的角色,然后选择“属性”

  8. 在“数据库角色属性 - database_role_name”对话框的“常规”页中,单击“添加”

  9. 在“选择数据库用户或角色”对话框的“输入要选择的对象名称(示例)”下,输入要添加到该数据库角色的登录名或数据库角色。 或者,单击“浏览...”,然后在“浏览对象”对话框中选择任意对象或所有可用对象。 单击“确定”以返回“数据库角色属性 - database_role_name”对话框。

  10. 选择“确定”

“使用 Transact-SQL”

向固定服务器角色添加成员

  1. “对象资源管理器” 中,连接到 数据库引擎的实例。

  2. 在标准菜单栏上,单击 “新建查询”

  3. 将以下示例复制并粘贴到查询窗口中,然后单击“执行” 。

    ALTER SERVER ROLE diskadmin ADD MEMBER [Domain\Juan] ;  
    GO  
    

有关详细信息,请参阅 ALTER SERVER ROLE (Transact-SQL))

向用户定义的数据库角色添加成员

  1. “对象资源管理器” 中,连接到 数据库引擎的实例。

  2. 在标准菜单栏上,单击 “新建查询”

  3. 将以下示例复制并粘贴到查询窗口中,然后单击“执行” 。

    ALTER ROLE Marketing ADD MEMBER [Domain\Juan] ;  
    GO  
    

有关详细信息,请参阅 ALTER ROLE (Transact-SQL)

另请参阅

服务器级别角色
数据库级别的角色
应用程序角色