チュートリアル: SQL データ ソースの Microsoft Purview ポリシーのトラブルシューティング
このチュートリアルでは、SQL インスタンスに伝達された Microsoft Purview ポリシーを調べるために SQL コマンドを発行する方法について説明します。 また、ポリシーを SQL インスタンスに強制的にダウンロードする方法についても説明します。 これらのコマンドはトラブルシューティングにのみ使用され、Microsoft Purview ポリシーの通常の操作では必要ありません。 これらのコマンドには、SQL インスタンスで高いレベルの特権が必要です。
Microsoft Purview ポリシーの詳細については、「 次の手順 」セクションに記載されている概念ガイドを参照してください。
前提条件
- Azure サブスクリプション。 まだお持ちでない場合は、 無料のサブスクリプションを作成します。
- Microsoft Purview アカウント。 お持ちでない場合は、 Microsoft Purview アカウントを作成するためのクイック スタートを参照してください。
- データ ソースを登録し、 データ ポリシーの適用を有効にして、ポリシーを作成します。 これを行うには、Microsoft Purview ポリシー ガイドのいずれかを使用します。 このチュートリアルの例に従うには、Azure SQL Database 用の DevOps ポリシーを作成します。
ポリシーをテストする
ポリシーを作成すると、ポリシーのサブジェクトで参照されるMicrosoft Entra プリンシパルは、ポリシーが発行されるサーバー内の任意のデータベースに接続できる必要があります。
ポリシーのダウンロードを強制する
次のコマンドを実行して、最新の発行済みポリシーを現在の SQL データベースに強制的に即時にダウンロードできます。 ##MS_ServerStateManager#-server ロールのメンバーシップを実行するために必要な最小限のアクセス許可。
-- Force immediate download of latest published policies
exec sp_external_policy_refresh reload
SQL からダウンロードしたポリシーの状態を分析する
次の DMV を使用して、ダウンロードされ、現在Microsoft Entra プリンシパルに割り当てられているポリシーを分析できます。 それらを実行するために必要な最小限のアクセス許可は、VIEW DATABASE SECURITY STATE または割り当てられたアクション グループ SQL セキュリティ 監査者です。
-- Lists generally supported actions
SELECT * FROM sys.dm_server_external_policy_actions
-- Lists the roles that are part of a policy published to this server
SELECT * FROM sys.dm_server_external_policy_roles
-- Lists the links between the roles and actions, could be used to join the two
SELECT * FROM sys.dm_server_external_policy_role_actions
-- Lists all Azure AD principals that were given connect permissions
SELECT * FROM sys.dm_server_external_policy_principals
-- Lists Azure AD principals assigned to a given role on a given resource scope
SELECT * FROM sys.dm_server_external_policy_role_members
-- Lists Azure AD principals, joined with roles, joined with their data actions
SELECT * FROM sys.dm_server_external_policy_principal_assigned_actions
次の手順
Microsoft Purview アクセス ポリシーの概念ガイド: