0

MSDN から: MSDNのアプリケーション ロール

アプリケーション ロールは、アプリケーションを独自のユーザーのような権限で実行できるようにするデータベース プリンシパルです。アプリケーション ロールを使用して、特定のアプリケーションを介して接続するユーザーのみが特定のデータにアクセスできるようにすることができます。データベース ロールとは異なり、アプリケーション ロールにはメンバーが含まれず、既定では非アクティブです。アプリケーション ロールは、両方の認証モードで機能します。アプリケーション ロールは、パスワードが必要な sp_setapprole を使用して有効にします。アプリケーション ロールはデータベース レベルのプリンシパルであるため、それらのデータベースでゲストに付与されたアクセス許可を介してのみ、他のデータベースにアクセスできます。したがって、ゲストが無効になっているデータベースは、他のデータベースのアプリケーション ロールにアクセスできなくなります。

誰かが私にこれを説明できますか?

これは、そのインスタンスでゲスト アカウントが無効になっている場合、同じ SQL Server インスタンス上の別のデータベースのテーブルを参照するクロス データベース クエリを作成できないということですか?

4

1 に答える 1

0

まず、インスタンスでゲスト アカウントを無効にすることは、私見では悪い考えです。ゲスト アカウントは、ユーザーがデータベースを "表示" できるように設計されています (それ以外はほとんどありません)。インスタンス (および結果としてマスター) のゲスト アカウントを無効にすると、データベースの列挙が停止し、使用される接続文字列によっては、認証されたロールの接続が停止する可能性があります。1 つ以上のデータベースとインスタンスにアプリケーション ロールを付与すると、このアカウントで実行されているアプリケーションがアクセスできるようになります (他の方法で拒否されない限り)。したがって、アプリケーションを実行できるすべてのユーザーは、アプリケーションを介してアクセスできます)。ユーザーにそれらの権利を付与せずに、アプリケーションが何かを実行できるようにする方法。 http://msdn.microsoft.com/en-us/library/aa905195%28v=sql.80%29.aspxインスタンスによって、sQL インストール インスタンスを意味していると思います...?

于 2013-05-06T10:55:20.270 に答える