2016-12-01 37 views
0

在内部部署的SQL Server,我可以通过这个代码验证的SYS管理员:如何验证用户是否是蔚蓝数据库订户帐户?

SELECT IS_SRVROLEMEMBER ('sysadmin') 

当使用Azure的SQL数据库我至少有一个super user。 但是,如何通过不使用名称来验证我是否通过此SUPER USER登录了SQL数据库?

问候, 丹尼尔

+0

'超级用户'? –

回答

0

按照MSDN文档为IS_SVROLEMEMBER,应该在一个非常相似的方式予以支持。

现在,您的标题暗示您问的问题与问题文本不同。我正在处理文本,如有必要,请随时编辑。

+0

所以你问是否可以告诉用户登录是否是服务器级别的主要帐户? –

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

相关问题