Sql server 如何在主数据库上创建主密钥?需要授予主数据库的登录名和用户哪些角色?

Sql server 如何在主数据库上创建主密钥?需要授予主数据库的登录名和用户哪些角色?,sql-server,azure,azure-sql-database,database-administration,azure-sql-data-warehouse,Sql Server,Azure,Azure Sql Database,Database Administration,Azure Sql Data Warehouse,我正在尝试在azure sql数据仓库的主数据库上创建主密钥。但我的用户没有执行此操作所需的权限。需要为azure sql数据仓库的用户或登录名分配/授予哪些角色?我能够使用SSMS的GUI向sql server instance on-prem的用户授予控制权限。我还能够借助该角色在该sql server的主数据库上创建主密钥。我用于此的脚本有: CREATE LOGIN LoaderRC20 WITH PASSWORD = 'a123STRONGpassword!'; CREATE USER

我正在尝试在azure sql数据仓库的主数据库上创建主密钥。但我的用户没有执行此操作所需的权限。需要为azure sql数据仓库的用户或登录名分配/授予哪些角色?我能够使用SSMS的GUI向sql server instance on-prem的用户授予控制权限。我还能够借助该角色在该sql server的主数据库上创建主密钥。我用于此的脚本有:

CREATE LOGIN LoaderRC20 WITH PASSWORD = 'a123STRONGpassword!';
CREATE USER LoaderRC20 FOR LOGIN LoaderRC20;
ALTER ROLE dbmanager ADD MEMBER [LoaderRC20];
ALTER ROLE loginmanager ADD MEMBER [LoaderRC20];
ALTER ROLE db_owner ADD MEMBER [LoaderRC20];
GRANT CONTROL ON DATABASE::[master] to LoaderRC20;
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '23987hxJ#KL95234nl0zBe';

但是没有直接的规定使用SSMS的GUI向azure sql warehouse上的用户提供此类访问。我在prem sql server实例上使用的脚本不适用于azure sql datawarehouse。数据库上的授权控制::[master]到LoaderRC20;抛出了一个无法授予、拒绝或撤销您自己、sa、dbo、sys等权限的错误。是否有任何脚本将权限授予azure sql datawarehouse的master db用户,以便我能够在其上创建主密钥?如果是,那么这些脚本及其顺序是什么?我已经非常努力地找到这些问题的答案。请帮助我找到答案

Dbmanager用于创建数据库,loginmanager用于管理登录

要在Azure SQL中创建主密钥(create master key),只需在用户Azure SQL数据库上下文(而不是主数据库)上运行以下语句。如果试图在主数据库上创建主密钥,可能会遇到错误“Msg 15247”。在任何用户数据库的上下文中,您都可以尝试:

CREATE MASTER KEY 
GO


这已在dba.stackexchange.com上得到答复
CREATE MASTER KEY ENCRYPTION BY PASSWORD='MyPassw0rdIsComplex.'
GO