如何在主数据库上创建主密钥?授予主数据库的登录名和用户相同的GRANT角色是什么?-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

如何在主数据库上创建主密钥?授予主数据库的登录名和用户相同的GRANT角色是什么?

祖安文状元 2020-01-04 15:12:30 183

我正在尝试在我的Azure SQL数据仓库的主数据库上创建一个主密钥。但是我的用户没有所需的权限。需要将什么角色分配/授予给azure sql数据仓库用户或登录?我能够使用SSMS的GUI向本地SQL Server实例的用户授予控制权限。我还可以借助该角色在该sql服务器的主数据库上创建一个主密钥。我使用的脚本是:

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仓库上向用户提供这种访问权限。我用于本地SQL Server实例的脚本不适用于Azure SQL数据仓库.GRANT CONTROL ON DATABASE :: [master ]到LoaderRC20; 引发了一个错误,该错误无法授予,拒绝或撤消您自己,sa,dbo,sys等的权限。是否有任何脚本可以授予azure sql数据仓库的主数据库用户权限,以便我可以在其上创建主密钥?如果是,那么这些脚本及其顺序是什么?问题。请帮我找到答案

登录用户名 登录数据库用户名 ddl数据库 des密钥 ddl创建
分享到
取消 提交回答
全部回答(1)
  • 祖安文状元
    2020-01-04 15:12:49

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

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

    CREATE MASTER KEY 
    GO
    
    

    要么

    CREATE MASTER KEY ENCRYPTION BY PASSWORD='MyPassw0rdIsComplex.'
    GO
    
    0 0
数据库
使用钉钉扫一扫加入圈子
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

相似问题
最新问题
推荐课程