Azure SQL server database 权限管理-赋予权限

微软官方文档:保护数据库 - Azure SQL Database | Microsoft Learn

管理数据库访问

管理数据库访问的方法是:将用户添加到数据库,或者允许用户使用安全的连接字符串进行访问。 连接字符串用于外部应用程序。 若要了解详细信息,请参阅管理登录名和用户帐户 Microsoft Entra 身份验证

若要添加用户,请选择数据库身份验证类型:

  • SQL 身份验证,使用用户名和密码登录,仅适用于服务器中存在特定数据库的情况
  • Microsoft Entra 身份验证,使用由 Microsoft Entra ID 管理的标识

一. SQL 身份验证

若要通过 SQL 身份验证来添加用户,请执行以下操作:

  1. 例如,使用 SQL Server Management Studio 连接到数据库。
  2. 对象资源管理器中,右键单击数据库,然后选择新建查询
  3. 在查询窗口中输入以下命令:
CREATE USER ApplicationUser WITH PASSWORD = 'YourStrongPassword1';
  1. 在工具栏上选择执行,以便创建用户。
  2. 默认情况下,用户可连接到数据库,但没有读取或写入数据的权限。 若要授予这些权限,请在新的查询窗口中执行以下命令:
ALTER ROLE db_datareader ADD MEMBER ApplicationUser;

ALTER ROLE db_datawriter ADD MEMBER ApplicationUser;

Note:  在数据库级别创建非管理员帐户,除非这些帐户需要执行创建新用户之类的管理员任务。

二. Microsoft Entra 身份验证

由于Azure SQL 数据库不支持 Microsoft Entra 服务器主体(登录名),因此使用 Microsoft Entra 帐户创建的数据库用户将创建为包含的数据库用户。 即使存在同名的登录名,包含的数据库用户也不会与 master 数据库中的登录名相关联。 Microsoft Entra 标识可以是单独的用户,也可以是组。 有关详细信息,请参阅包含的数据库用户,使你的数据库可移植,并查看 Microsoft Entra 教程,了解如何使用 Microsoft Entra ID 进行身份验证。

Note: 

不能使用 Azure 门户创建数据库用户(管理员除外)。 Microsoft Entra 角色不会传播到 SQL Server、数据库或数据仓库。 它们只能用于管理 Azure 资源,不会应用于数据库权限。

例如,“SQL Server 参与者”角色不会授予连接到数据库或数据仓库的访问权限。 必须使用 T-SQL 语句在数据库中授予此权限。

 Important:

不支持在 T-SQL 的 CREATE LOGIN 和 CREATE USER 语句中将特殊字符(例如冒号 : 或与号 &)用作用户名的一部分。

若要添加具有 Microsoft Entra 身份验证的用户,请执行以下操作:

  1. 使用至少具有 ALTER ANY USER 权限的 Microsoft Entra 帐户连接到 Azure 中的服务器。

  2. 在“对象资源管理器”中,右键单击数据库,并选择“新建查询” 。

  3. 在查询窗口中输入以下命令,并将 <Azure_AD_principal_name> 修改为 Microsoft Entra 用户的主体名称,或者修改为 Microsoft Entra 组的显示名称:

    CREATE USER [<Azure_AD_principal_name>] FROM EXTERNAL PROVIDER;
    

 Note:

Microsoft Entra 用户在数据库元数据中标记为类型 E (EXTERNAL_USER),而组则标记为类型 X (EXTERNAL_GROUPS)。 有关详细信息,请参阅 sys.database_principals

  • 14
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值