Microsoft Purview データ所有者ポリシーを使用して Azure Storage への読み取りアクセスをプロビジョニングする (プレビュー)

重要

この機能は現在プレビューの段階です。 Microsoft Azure プレビューの補足使用条件には、ベータ版、プレビュー版、または一般公開されていない Azure 機能に適用される追加の法的条件が含まれています。

データ所有者ポリシー は、Microsoft Purview アクセス ポリシーの一種です。 これにより、Microsoft Purview のデータ 使用管理 に登録されているソース内のユーザー データへのアクセスを管理できます。 これらのポリシーは、Microsoft Purview ガバナンス ポータルで直接作成でき、発行後にデータ ソースによって適用されます。

このガイドでは、データ所有者が Azure Storage データセットへのアクセスの Microsoft Purview 管理を委任する方法について説明します。 現時点では、次の 2 つの Azure Storage ソースがサポートされています。

  • BLOB ストレージ
  • Azure Data Lake Storage (ADLS) Gen2

前提条件

リージョンのサポート

  • すべての Microsoft Purview リージョンがサポートされています。
  • 次のリージョンのストレージ アカウントは、追加の構成を必要とせずにサポートされます。 ただし、ゾーン冗長ストレージ (ZRS) アカウントはサポートされていません。
    • 米国東部
    • 米国東部 2
    • 米国中央南部
    • 米国西部 2
    • カナダ中部
    • 北ヨーロッパ
    • 西ヨーロッパ
    • フランス中部
    • 英国南部
    • 東南アジア
    • オーストラリア東部
  • 次のセクションで説明するように、機能フラグ AllowPurviewPolicyEnforcement を設定した後、Public Cloud の他のリージョンのストレージ アカウントがサポートされます。 機能フラグ AllowPurviewPolicyEnforcement を設定した後に作成された場合、新しく作成された ZRS ストレージ アカウントがサポートされます。

必要に応じて、 このガイドに従って新しいストレージ アカウントを作成できます。

Microsoft Purview からのポリシーに対して Azure Storage アカウントが存在するサブスクリプションを構成する

この手順は、特定のリージョンでのみ必要です (前のセクションを参照)。 Microsoft Purview で 1 つ以上の Azure Storage アカウントのポリシーを管理できるようにするには、Azure Storage アカウントをデプロイするサブスクリプションで次の PowerShell コマンドを実行します。 これらの PowerShell コマンドを使用すると、Microsoft Purview は、そのサブスクリプション内のすべての Azure Storage アカウントのポリシーを管理できます。

これらのコマンドをローカルで実行する場合は、必ず管理者として PowerShell を実行してください。 または、Azure portal で Azure Cloud Shell を使用することもできます。 https://shell.azure.com

# Install the Az module
Install-Module -Name Az -Scope CurrentUser -Repository PSGallery -Force
# Login into the subscription
Connect-AzAccount -Subscription <SubscriptionID>
# Register the feature
Register-AzProviderFeature -FeatureName AllowPurviewPolicyEnforcement -ProviderNamespace Microsoft.Storage

最後のコマンドの出力に RegistrationStateが [登録済み] と表示されている場合、サブスクリプションはアクセス ポリシーに対して有効になります。 出力が [登録中] の場合は、少なくとも 10 分待ってから、コマンドを再試行します。 RegistrationState に [登録済み] と表示されない限り、続行しないでください

Microsoft Purview の構成

Microsoft Purview でデータ ソースを登録する

データ リソースのポリシーを Microsoft Purview で作成するには、そのデータ リソースを Microsoft Purview Studio に登録する必要があります。 データ リソースの登録に関連する手順については、このガイドの後半で説明します。

注:

Microsoft Purview ポリシーは、データ リソース ARM パスに依存します。 データ リソースを新しいリソース グループまたはサブスクリプションに移動する場合は、登録を解除してから、Microsoft Purview に再登録する必要があります。

データ ソースでデータ使用管理を有効にするアクセス許可を構成する

リソースが登録されたら、そのリソースのポリシーを Microsoft Purview で作成する前に、アクセス許可を構成する必要があります。 データ使用管理を有効にするには、一連のアクセス許可が必要です。 これは、データ ソース、リソース グループ、またはサブスクリプションに適用されます。 データ使用管理を有効にするには、リソースに対する特定の ID とアクセス管理 (IAM) 権限と、特定の Microsoft Purview 権限の両方が必要です。

  • リソースの Azure Resource Manager パスまたはその親 (つまり、IAM アクセス許可の継承を使用) には、次のいずれかの IAM ロールの組み合わせが必要です。

    • IAM 所有者
    • IAM 共同作成者と IAM ユーザー アクセス管理者の両方

    Azure ロールベースのアクセス制御 (RBAC) アクセス許可を構成するには、 このガイドに従います。 次のスクリーンショットは、データ リソースのAzure portalの [Access Control] セクションにアクセスしてロールの割り当てを追加する方法を示しています。

    ロールの割り当てを追加するためのAzure portalのセクションを示すスクリーンショット。

    注:

    データ リソースの IAM 所有者 ロールは、親リソース グループ、サブスクリプション、またはサブスクリプション管理グループから継承できます。 リソースの IAM 所有者 ロールを保持または継承している Azure AD ユーザー、グループ、およびサービス プリンシパルを確認します。

  • また、コレクションまたは親コレクションの Microsoft Purview データ ソース管理者 ロールも必要です (継承が有効な場合)。 詳細については、 Microsoft Purview ロールの割り当ての管理に関するガイドを参照してください。

    次のスクリーンショットは、ルート コレクション レベルで データ ソース管理者 ロールを割り当てる方法を示しています。

    ルート コレクション レベルでデータ ソース管理者ロールを割り当てるための選択を示すスクリーンショット。

アクセス ポリシーを作成、更新、または削除するように Microsoft Purview アクセス許可を構成する

ポリシーを作成、更新、または削除するには、ルート コレクション レベルで Microsoft Purview でポリシー作成者ロールを取得する必要があります。

  • ポリシー作成者ロールは、DevOps ポリシーとデータ所有者ポリシーを作成、更新、削除できます。
  • ポリシー作成者ロールは、セルフサービス アクセス ポリシーを削除できます。

Microsoft Purview ロールの割り当ての管理の詳細については、Microsoft Purview データ マップでのコレクションの作成と管理に関するページを参照してください。

注:

ポリシー作成者ロールは、ルート コレクション レベルで構成する必要があります。

さらに、ポリシーの件名を作成または更新するときに Azure AD ユーザーまたはグループを簡単に検索するには、Azure AD で [ディレクトリ閲覧者 ] アクセス許可を取得することで大きなメリットを得ることができます。 これは、Azure テナント内のユーザーに共通のアクセス許可です。 ディレクトリ閲覧者のアクセス許可がない場合、ポリシー作成者は、データ ポリシーの件名に含まれるすべてのプリンシパルの完全なユーザー名または電子メールを入力する必要があります。

データ所有者ポリシーを発行するための Microsoft Purview アクセス許可を構成する

データ所有者ポリシーを使用すると、Microsoft Purview ポリシーの作成者データ ソース管理者ロールをorganization内の別のユーザーに割り当てる場合、チェックと残高が許可されます。 データ所有者ポリシーが有効になる前に、2 人目のユーザー (データ ソース管理者) がそれを確認し、公開して明示的に承認する必要があります。 これは、DevOps またはセルフサービス アクセス ポリシーには適用されません。公開は、それらのポリシーが作成または更新されるときに自動的に行われます。

データ所有者ポリシーを発行するには、ルート コレクション レベルで Microsoft Purview でデータ ソース管理者ロールを取得する必要があります。

Microsoft Purview ロールの割り当ての管理の詳細については、Microsoft Purview データ マップでのコレクションの作成と管理に関するページを参照してください。

注:

データ所有者ポリシーを発行するには、ルート コレクション レベルでデータ ソース管理者ロールを構成する必要があります。

Microsoft Purview のロールにアクセス プロビジョニングの責任を委任する

リソースでデータ使用管理が有効になった後、ルート コレクション レベルでポリシー作成者ロールを持つ Microsoft Purview ユーザーは、Microsoft Purview からそのデータ ソースへのアクセスをプロビジョニングできます。

注:

Microsoft Purview ルート コレクション管理者 は、ルート ポリシー作成者 ロールに新しいユーザーを割り当てることができます。 コレクション管理者は、コレクションの下のデータ ソース管理者ロールに新しいユーザーを割り当てることができます。 Microsoft Purview コレクション管理者データ ソース管理者、または ポリシー作成者 ロールを保持するユーザーを最小限に抑え、慎重に確認します。

発行されたポリシーを持つ Microsoft Purview アカウントが削除されると、特定のデータ ソースに依存する時間内にそのようなポリシーが適用されなくなります。 この変更は、セキュリティとデータ アクセスの可用性の両方に影響を与える可能性があります。 IAM の共同作成者ロールと所有者ロールは、Microsoft Purview アカウントを削除できます。 これらのアクセス許可をチェックするには、Microsoft Purview アカウントの [アクセス制御 (IAM)] セクションに移動し、[ロールの割り当て] を選択します。 ロックを使用して、Resource Manager ロックによって Microsoft Purview アカウントが削除されないようにすることもできます。

Microsoft Purview for Data Use Management にデータ ソースを登録する

後でアクセス ポリシーを定義するには、まず Azure Storage リソースを Microsoft Purview に登録する必要があります。

リソースを登録するには、次のガイドの 「前提条件登録 」セクションに従います。

リソースを登録したら、データ使用管理を有効にする必要があります。 データ使用管理には特定のアクセス許可が必要であり、データ ソースへのアクセスを管理するために特定の Microsoft Purview ロールに委任されるため、データのセキュリティに影響を与える可能性があります。 このガイドの「データ使用管理」に関連するセキュリティで保護されたプラクティスに関するページを参照してください。データ使用管理を有効にする方法

データ ソースの [ データの使用管理 ] トグル が有効になると、次のスクリーンショットのようになります。

リソース エディターで [有効] タブを切り替えて、ポリシーのデータ ソースを登録する方法を示すスクリーンショット。

データ所有者ポリシーを作成して発行する

データ所有者ポリシー作成チュートリアルの「新しいポリシーの作成」および「ポリシーの発行」セクションの手順を実行します。 結果は、イメージに示されている例のようなデータ所有者ポリシーになります。グループ Contoso Team にストレージ アカウント marketinglake1 への読み取りアクセスを提供するポリシーです。

Azure Storage アカウントへのアクセスを許可するサンプル データ所有者ポリシーを示すスクリーンショット。

重要

  • 発行はバックグラウンド操作です。 Azure Storage アカウントには、変更が反映されるまでに最大 2 時間 かかることがあります。

データ所有者ポリシーの発行を解除する

Microsoft Purview でデータ所有者ポリシーを発行解除する手順については、こちらのリンクを参照してください。

データ所有者ポリシーを更新または削除する

Microsoft Purview でデータ所有者ポリシーを更新または削除する手順については、こちらのリンクを参照してください。

データ使用量

  • データ コンシューマーは、Power BI や Azure Synapse Analytics ワークスペースなどのツールを使用して、要求されたデータセットにアクセスできます。
  • Azure Storage Explorerの [コピー] コマンドと [複製] コマンドでは、[Purview からの変更を許可する] ポリシーに加えて、追加の IAM アクセス許可が必要です。 Iam で Microsoft.Storage/storageAccounts/blobServices/generateUserDelegationKey/action アクセス許可を Azure AD プリンシパルに提供します。
  • サブコンテナー アクセス: ストレージ アカウントのコンテナー レベルの下に設定されたポリシー ステートメントがサポートされています。 ただし、アクセス権が Azure Storage アカウントのファイルまたはフォルダー レベルでのみ付与されている場合、ユーザーはAzure portalのストレージ ブラウザーまたはMicrosoft Azure Storage Explorer ツールを使用してデータ資産を参照できません。 これは、これらのアプリがコンテナー レベルから階層をクロールしようとし、そのレベルでアクセス権が付与されていないために要求が失敗するためです。 代わりに、データを要求するアプリは、データ オブジェクトに完全修飾名を指定して直接アクセスを実行する必要があります。 次のドキュメントでは、直接アクセスを実行する方法の例を示します。 このハウツーガイドの 「次の手順 」セクションのブログも参照してください。

追加情報

  • ストレージ アカウント レベルでポリシーを作成すると、サブジェクトはシステム コンテナー ( たとえば、$logs) にアクセスできるようになります。 これが望ましくない場合は、最初にデータ ソースをスキャンしてから、(つまりコンテナーレベルまたはサブコンテナレベルで) それぞれの詳細なポリシーを作成します。
  • コンテナー内のルート BLOB には、Microsoft Purview の許可型 RBAC ポリシーの Azure AD プリンシパルにアクセスできます。そのようなポリシーのスコープがサブスクリプション、リソース グループ、ストレージ アカウント、またはストレージ アカウント内のコンテナーである場合。
  • ストレージ アカウント内のルート コンテナーには、Microsoft Purview 許可タイプの RBAC ポリシーの Azure AD プリンシパルにアクセス できます (そのようなポリシーのスコープがサブスクリプション、リソース グループ、またはストレージ アカウントの場合)。

制限

  • ストレージ アカウントによって適用できる Microsoft Purview ポリシーの制限は、サブスクリプションあたり 100 MB で、約 5000 ポリシーに相当します。

既知の問題

ポリシーの作成に関連する既知の問題

  • Microsoft Purview リソース セットに基づいてポリシー ステートメントを作成しないでください。 Microsoft Purview ポリシー作成 UI に表示された場合でも、まだ適用されません。 リソース セットの詳細については、こちらをご覧ください。

ポリシー アクション マッピング

このセクションでは、Microsoft Purview データ ポリシーのアクションが Azure Storage の特定のアクションにマップされる方法について説明します。

Microsoft Purview ポリシー アクション データ ソース固有のアクション
Read Microsoft.Storage/storageAccounts/blobServices/containers/read
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read
Modify Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/add/action
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/move/action
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/delete
Microsoft.Storage/storageAccounts/blobServices/containers/read
Microsoft.Storage/storageAccounts/blobServices/containers/write
Microsoft.Storage/storageAccounts/blobServices/containers/delete

次の手順

ブログ、デモ、および関連するチュートリアルを確認します。