我创建了2个Azure安全组(Read-SQL,第二个是Write-SQL),以便他们使用基于其组成员身份的Azure AD身份通过SSMS登录到多个Azure SQL服务器,从而访问这些服务上的多个数据库。
首先,我在Azure租户的SQL Server上配置了一个管理组。
我已经使用我的凭据通过SSMS连接到SQL,到目前为止一切顺利。
之后,我打开了一个查询,并键入master数据库
CREATE USER [SQL-READ] FROM external provider
ALTER ROLE db_datareader ADD MEMBER [SQL-READ];
(Did对于Write-SQL也是如此)
只创建用户,不授予权限,并显示错误消息,指出用户不存在或我没有权限。
我在Azure中具有Azure全局管理员权限,但不知道为什么会出现此错误。
在底线,我希望Read-SQL和Write-SQL能够登录到SQL Server,并有权访问其中的所有数据库,以及授予Read-SQL读取权限和Write-SQL写入权限。
我读了一些微软的文章,但我更困惑了,因为我不知道我是否需要创建一个登录或创建一个用户或一个包含的用户。
请帮帮忙
谢谢
为了更好地理解,这里有一些屏幕截图
enter image description here
enter image description here
阅读以下文章,但只有部分成功。
https://www.mssqltips.com/sqlservertip/6751/azure-ad-authentication-azure-sql-databases/
https://learn.microsoft.com/en-us/azure/azure-sql/database/authentication-aad-configure?view=azuresql&tabs=azure-powershell#create-contained-users-mapped-to-azure-ad-identities
https://learn.microsoft.com/en-us/azure/azure-sql/database/authentication-aad-overview?view=azuresql
https://learn.microsoft.com/en-us/sql/relational-databases/security/contained-database-users-making-your-database-portable?view=sql-server-ver16
1条答案
按热度按时间vngu2lb81#
是否应创建登录名、用户或包含的用户将取决于你的访问权限和安全要求。但是,在Azure SQL数据库中,用户是按数据库创建的。因此,你可以在master数据库中创建登录名,然后需要在该SQL Server上的每个数据库中创建关联的用户。
This文档提供了有关为Azure SQL数据库创建登录名、用户和包含用户的详细信息。