【SQL Server】ログインユーザーの一覧を取得する

ログインユーザーの一覧
を取得できます!

ここで言っている「ログインユーザー」とは
「ログイン」のことです!
※「データベースユーザー」ではありません。

システムテーブル「sys.server_principals」により
取得できます!

PR

SQL

ここでは以下のように各列に対し別名を付けます。
・列「name」に「ユーザー名」
・列「type_desc」に「認証方法」
・列「create_date」に「作成日時」
・列「modify_date」に「更新日時」
※「認証方法」は「Windows認証(=WINDOWS_LOGIN)」または「SQL Server認証(=SQL_LOGIN)」です。

また以下の条件で絞ります。
・列「type」が「S(=SQL認証)」、または「U(=Windows認証)」
・列「is_disabled」が「0(=ログイン有効)」

また「更新日時」でソート(降順)させます。

SELECT
	name AS 'ユーザー名',
	type_desc AS '認証方法',
	create_date AS '作成日時',
	modify_date AS '更新日時'
FROM  sys.server_principals
WHERE
	type IN ('S','U') AND
	is_disabled = 0
ORDER BY 更新日時 DESC
PR

実行結果

ログインユーザーの一覧を取得できました!
※「ログインの一覧」を取得できました。「データベースユーザーの一覧」ではなく。

ログインユーザーの一覧
ログインユーザーの一覧
PR

参考

上記で使用した以下の詳細は、公式サイトをご確認ください。

●システムテーブル「sys.server_principals」

タイトルとURLをコピーしました