web-dev-qa-db-ja.com

ActiveDirectoryグループを介したSQLServerユーザーの管理

レポート用にSQLServerインスタンスを構築しています。私の計画は、サーバーとデータベースのログインにADグループを使用することです。異なる役割(管理者、開発者、ユーザーなど)を持ついくつかのグループがあり、これらの役割をSQL Serverデータベースの役割(db_owner、db_datawriterなど)にマップしたいと思います。ログインにADグループを使用することの長所と短所は何ですか?どんな問題に気づきましたか?

2
hyty

そもそもADを管理しなければならないというオーバーヘッド以外に、短所はないと思います。 SQL ServerのWindowsログイン資格情報を使用することは、特に組織化された役割グループと話し合う方法で、Microsoftからのベストプラクティスの推奨事項です。彼らが道を譲ったら、SQLServer認証のオプションを完全に排除するでしょう。

補遺:

SQL 2005以降を使用している場合は、次の方法でデフォルトスキーマオプションを使用します(このためのGUIオプションはないと思います)。

ALTER USER userName  
     WITH <set_item> [ ,...n ]

<set_item> ::= 
     NAME = newUserName 
     | DEFAULT_SCHEMA = schemaName
     | LOGIN = loginName

すなわち:

ALTER USER DOMAIN\UserName DEFAULT_SCHEMA = dbo;
GO
3
Ryan Bolger

Active Directoryグループの管理は、Active Directory以外の管理者に委任することもできます。これは、アプリケーション内管理ツール以外の便利な機能です。

1
califguy4christ

私が遭遇した最大の欠点は、AD認証をサポートせず、SQL認証の使用を主張するサードパーティのアプリです。通常はadmin/adminのようなクリエイティブなログインを使用します。それを除けば、他の唯一の問題は、データベースにアクセスできるユーザーをSQLサーバー上で完全に可視化できないこと、グループのみを表示するか、ユーザーがアクティブなとき、またはユーザーがオブジェクトを所有しているかどうかを表示することです。ただし、ユーザーレベルの情報が必要な場合にDBAがActive Directoryにアクセスできる限り、これは非常に小さな問題です。

0
SqlACID