gpt4 book ai didi

azure - 使用 Active Directory 集成身份验证向 Azure Sql 数据库添加具有特定权限的新用户

转载 作者:行者123 更新时间:2023-12-02 23:20:21 26 4
gpt4 key购买 nike

我有一个带有两个数据库的 Azure SQL Server,我尝试对其使用 Azure Active Directory 集成身份验证。其中一个数据库至关重要,大多数用户只需要被授予对此数据库的“读取”访问权限。

要添加具有“读者角色”的新用户,我执行了以下操作:

  • 在 Azure 门户的访问控制 (IAM) 下添加了具有读者角色的用户。执行此步骤后用户无法连接。

  • 然后我尝试使用以下命令添加用户:

    创建用户[ [email protected] ] 来自外部提供商;

    sp_addrolemember db_datareader,[[email protected] ];

用户仍然无法使用 AAD 集成身份验证连接到服务器。在这两种情况下,我都会收到匿名登录错误。

Click to see the snip of the error message

我错过了什么吗?如果没有,是否有其他方法可以向数据库添加具有特定权限的用户?

最佳答案

抱歉耽搁了,M。

是的,您混淆了两种不同级别的访问控制;您描述的 IAM 控件(读者角色分配)允许用户查看(读取)Azure 门户中的设置。相反,我怀疑您希望用户(经过 AAD 身份验证)能够仅读取服务器上的数据。这是通过 T-SQL 完成的,与门户定义的访问控制无关。

现在,您尝试在数据库级别创建外部用户(AAD 访问权限),并且希望他们具有读取权限 - 确保您已完成所有步骤 outlined here

乍一看,以下可能是必要的步骤:

1.) 确保您已为 SQL Server 分配 AAD 管理员。

2.) 确保您连接到要在其上创建用户的数据库,不是主数据库,就像通常在非 Azure SQL Server 实例上那样。使用以下命令通过 T-SQL 创建用户: CREATE USER <Azure_AD_principal_name> FROM EXTERNAL PROVIDER;

3.) 授予用户 db_datareader 对该数据库的权限:

ALTER ROLE db_datareader ADD MEMBER <Azure_AD_principal_name>
GO

关于azure - 使用 Active Directory 集成身份验证向 Azure Sql 数据库添加具有特定权限的新用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39746160/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com