如果我无法向其中添加任何用户,那么 Azure Syanpse 中的角色有什么用?

Bro*_*man 2 sql azure azure-synapse

我正在使用管理员登录 ID 和密码在 Azure synapse 中创建用户,特别是 login_id。

截至目前,我必须使用下面的代码单独授予每次登录的权限。 (brown_batman是数据库adventure2016在login_id Brown_batman中创建的用户)

grant Select,Alter,Update,Execute,Insert on database::[adventure2016] to brown_batman;
Run Code Online (Sandbox Code Playgroud)

我正在使用以下代码在 Adventure2016 DB 中创建一个角色并授予该角色权限:

CREATE ROLE Perm;  
grant Select,Alter,Update,Execute,Insert on database::[adventure2016] to Perm
Run Code Online (Sandbox Code Playgroud)

现在,如果我尝试使用代码将用户添加到角色,ALTER ROLE Perm ADD Member brown_batman; 则会收到错误

解析错误位于第 1 行,第 17 列:“ADD”附近的语法不正确。

当我无法将用户添加到特定角色时,我真的很想了解角色的使用。

Nic*_*aid 6

请参阅此处的 doco;

https://learn.microsoft.com/en-us/azure/synapse-analytics/sql/sql-authentication?tabs=serverless

在 Azure SQL 数据库或 synapse 无服务器中,使用 ALTER ROLE 语句。

ALTER ROLE db_owner ADD MEMBER Mary;
Run Code Online (Sandbox Code Playgroud)

我假设您没有使用无服务器,因此您需要使用以下语法:

在专用 SQL 池中使用 EXEC sp_addrolemember

EXEC sp_addrolemember 'db_owner', 'Mary';
Run Code Online (Sandbox Code Playgroud)