SQL Azure:列出所有登录名和用户

问题描述 投票:6回答:2

我正在使用V12 Azure SQL

要列出所有登录(server level),我们可以在master数据库上使用此查询:

SELECT * FROM sys.sql_logins;

要列出所有用户(database level),我们可以在特定数据库上使用此查询:

SELECT * FROM sys.sysusers;

但是如何获得loginsusers之间的对应关系?

存储此通信的system table在哪里?

sql-server azure login azure-sql-database
2个回答
6
投票

要查找为用户映射的登录名,请查看sid中的sys.sysusers列。

该值对应于master数据库中sidsys.sql_logins列。

不幸的是,在连接到SID时,您无法发现user database的登录名。一旦你有master并查询sid获取名称,你将需要单独连接sys.sys_logins数据库。


3
投票

连接到主DB时,您可以运行此查询以生成登录和用户的列表

select l.name as [login name],u.name as [user name] from sysusers u inner join sys.sql_logins l on u.sid=l.sid

我希望这可行

© www.soinside.com 2019 - 2024. All rights reserved.