contained database authentication サーバー構成オプション
contained database authentication オプションを使用して、SQL Server データベース エンジンのインスタンス上で包含データベースを有効にします。
このサーバー オプションでは、contained database authentication を制御できます。
インスタンスで contained database authentication がオフ (0) の場合、包含データベースを作成したりデータベース エンジンにアタッチすることはできません。
インスタンスで contained database authentication がオン (1) の場合、包含データベースを作成したりデータベース エンジンにアタッチすることができます。
包含データベースには、すべてのデータベース設定と、データベースを定義す��ために必要なメタデータが含まれており、データベースがインストールされている データベース エンジンのインスタンスに対する構成上の依存関係がありません。 ユーザーは、データベース エンジンレベルでのログイン認証なしで包含データベースに接続できます。 データベース エンジンからデータベースを分離すると、SQL Server の他のインスタンスにデータベースを簡単に移動できるようになります。 すべてのデータベース設定をデータベースに含めることによって、データベース所有者はデータベースのすべての構成設定を管理できるようになります。 包含データベースの詳細については、「包含データベース」を参照してください。
SQL Server インスタンスに包含データベースが存在する場合、contained database authentication の設定は RECONFIGURE WITH OVERRIDE ステートメントを使用して 0 に設定できます。 contained database authentication を 0 に設定すると、包含データベースに対して contained database authentication が無効になります。
セキュリティに関する注意 |
---|
包含データベースが有効な場合、db_owner や db_accessadmin データベース ロールのメンバーなど、ALTER ANY USER 権限を付与されたデータベース ユーザーは、データベースへのアクセス権を付与することができ、そうすることによって SQL Server のインスタンスへのアクセス権を付与することができます。 これは、サーバーへのアクセスについての制御が sysadmin と securityadmin の固定サーバー ロールのメンバーに限られなくなり、サーバー レベル CONTROL SERVER と ALTER ANY LOGIN 権限でログインすることを意味します。 包含データベースを許可する前に、包含データベースに関連するリスクを理解する必要があります。 詳細については、「包含データベースでのセキュリティのベスト プラクティス」を参照してください。 |
使用例
次の例では、データベース エンジンのインスタンスで包含データベースを有効にします。
sp_configure 'contained database authentication', 1;
GO
RECONFIGURE;
GO