如何验证用户是否是azure数据库订阅者帐户?

时间:2016-12-01 14:15:36

标签: azure azure-sql-database

在内部部署的SQL Server中,我可以通过以下代码验证sys-admin:

SELECT IS_SRVROLEMEMBER ('sysadmin')

使用Azure SQL数据库时,我至少有一个super user。 但是如何通过不使用它的名称验证我是否已使用此超级用户登录SQL数据库?

此致 丹尼尔

2 个答案:

答案 0 :(得分:0)

根据IS_SVROLEMEMBER的MSDN文档,应该以非常类似的方式支持它。

现在,你的标题表明你问的是与问题文本不同的东西。我正在处理文本,如有必要,请随时编辑。

答案 1 :(得分:0)

答案是否定的,你不能。在Azure SQL数据库中,没有服务器角色概念。如果您在脚本下运行,则会发生错误:
enter image description here

未向数据库订户帐户分配任何服务器角色。因此,当您运行SELECT IS_SRVROLEMEMBER ('sysadmin')时,它始终返回0.

现在让我们看看数据库角色。我发现下面突出显示的两个数据库角色名称与我的超级用户名(订户帐户和AAD管理员帐户)相同。

enter image description here

然后我查看系统视图 [sys]。[database_principals] ,如下所示。从我在这里找到的,似乎在订阅者帐户和AAD管理员帐户被创建之后,创建了两个相应的数据库角色,但是缺少官方文档关于它是如何工作的,我只是分享我在这里找到的东西,希望它帮助

enter image description here