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
前提条件
アクティブなサブスクリプションを持つ Azure アカウント。 無料でアカウントを作成します。
新しいまたは既存の Microsoft Purview アカウント。 このクイック スタート ガイドに従って作成します。
リージョンのサポート
- すべての Microsoft Purview リージョンがサポートされています。
- 次のリージョンのストレージ アカウントは、追加の構成を必要とせずにサポートされます。 ただし、ゾーン冗長ストレージ (ZRS) アカウントはサポートされていません。
- オーストラリア中部
- オーストラリア東部
- オーストラリア南東部
- ブラジル南部
- カナダ中部
- カナダ東部
- インド中部
- 米国中部
- 東アジア
- 米国東部 2
- 米国東部
- フランス中部
- ドイツ中西部
- 東日本
- 西日本
- 韓国中部
- 米国中央北部
- 北ヨーロッパ
- ノルウェー東部
- ポーランド中部
- カタール中部
- 米国中央南部
- 南アフリカ北部
- 東南アジア
- インド南部
- スウェーデン中部
- スイス北部
- 米国中央西部
- 西ヨーロッパ
- 米国西部
- 米国西部 2
- 米国西部 3
- アラブ首長国連邦北部
- 英国南部
- 英国西部
- 次のセクションで説明するように、機能フラグ 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: https://shell.azure.comで Azure Cloud Shellを使用することもできます。
# 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] セクションにアクセスしてロールの割り当てを追加する方法を示しています。
注:
データ リソースの IAM 所有者 ロールは、親リソース グループ、サブスクリプション、またはサブスクリプション管理グループから継承できます。 ユーザー、グループ、およびサービス プリンシパルがリソースの IAM 所有者ロールを保持しているか、継承しているMicrosoft Entraを確認します。
また、コレクションまたは親コレクションの Microsoft Purview データ ソース管理者 ロールも必要です (継承が有効な場合)。 詳細については、 Microsoft Purview ロールの割り当ての管理に関するガイドを参照してください。
次のスクリーンショットは、ルート コレクション レベルで データ ソース管理者 ロールを割り当てる方法を示しています。
アクセス ポリシーを作成、更新、または削除するように Microsoft Purview アクセス許可を構成する
ポリシーを作成、更新、または削除するには、ルート コレクション レベルで Microsoft Purview でポリシー作成者ロールを取得する必要があります。
- ポリシー作成者ロールは、DevOps ポリシーとデータ所有者ポリシーを作成、更新、削除できます。
- ポリシー作成者ロールは、セルフサービス アクセス ポリシーを削除できます。
Microsoft Purview ロールの割り当ての管理の詳細については、Microsoft Purview データ マップでのコレクションの作成と管理に関するページを参照してください。
注:
ポリシー作成者ロールは、ルート コレクション レベルで構成する必要があります。
さらに、ポリシーの件名を作成または更新するときに、Microsoft Entraユーザーまたはグループを簡単に検索するには、Microsoft Entra IDで [ディレクトリ閲覧者] アクセス許可を取得することで大きなメリットを得ることができます。 これは、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 にデータ ソースを登録する
後でアクセス ポリシーを定義するには、まず Azure Storage リソースを Microsoft Purview に登録する必要があります。
リソースを登録するには、次のガイドの 「前提条件 と 登録 」セクションに従います。
リソースを登録したら、データ ポリシーの適用を有効にする必要があります。 データ ポリシーの適用には特定のアクセス許可が必要であり、データ ソースへのアクセスを管理するために特定の Microsoft Purview ロールに委任されるため、データのセキュリティに影響を与える可能性があります。 このガイドのデータ ポリシーの適用に関連するセキュリティで保護されたプラクティスを確認する: データ ポリシーの適用を有効にする方法
データ ソースの [データ ポリシーの適用 ] トグル が [有効] になると、次のスクリーンショットのようになります。
データ所有者ポリシーを作成して発行する
データ所有者ポリシー作成チュートリアルの「新しいポリシーの作成」および「ポリシーの発行」セクションの手順を実行します。 結果は、イメージに示されている例のようなデータ所有者ポリシーになります。グループ Contoso Team にストレージ アカウント marketinglake1 への読み取りアクセスを提供するポリシーです。
重要
- 発行はバックグラウンド操作です。 Azure Storage アカウントには、変更が反映されるまでに最大 2 時間 かかることがあります。
データ所有者ポリシーの発行を解除する
Microsoft Purview でデータ所有者ポリシーを発行解除する手順については、こちらのリンクを参照してください。
データ所有者ポリシーを更新または削除する
Microsoft Purview でデータ所有者ポリシーを更新または削除する手順については、こちらのリンクを参照してください。
データ使用量
- データ コンシューマーは、Power BI や Azure Synapse Analytics ワークスペースなどのツールを使用して、要求されたデータセットにアクセスできます。
- Azure Storage Explorerの [コピー] コマンドと [複製] コマンドでは、[Purview からの変更を許可する] ポリシーに加えて、他の IAM アクセス許可が機能する必要があります。 IAM の Microsoft.Storage/storageAccounts/blobServices/generateUserDelegationKey/action アクセス許可をMicrosoft Entra プリンシパルに指定します。
- サブコンテナー アクセス: ストレージ アカウントのコンテナー レベルの下に設定されたポリシー ステートメントがサポートされています。 ただし、アクセス権が Azure Storage アカウントのファイルまたはフォルダー レベルでのみ付与されている場合、ユーザーは、Azure portalの Storage Browser または Microsoft Azure Storage Explorer ツールを使用してデータ資産を参照できません。 これは、これらのアプリがコンテナー レベルから階層をクロールしようとし、そのレベルでアクセス権が付与されていないために要求が失敗するためです。 代わりに、データを要求するアプリは、データ オブジェクトに完全修飾名を指定して直接アクセスを実行する必要があります。 次のドキュメントでは、直接アクセスを実行する方法の例を示します。 このハウツーガイドの 「次の手順 」セクションのブログも参照してください。
追加情報
- ストレージ アカウント レベルでポリシーを作成すると、サブジェクトはシステム コンテナー ( たとえば、$logs) にアクセスできます。 これが望ましくない場合は、まずデータ ソースをスキャンし、(つまりコンテナーレベルまたはサブコンテナレベルで) それぞれの詳細なポリシーを作成します。
- コンテナー内のルート BLOB には、Microsoft Purview の許可型 RBAC ポリシーのMicrosoft Entra プリンシパルにアクセスできます。このようなポリシーのスコープがサブスクリプション、リソース グループ、ストレージ アカウント、またはストレージ アカウント内のコンテナーである場合。
- ストレージ アカウントのルート コンテナーには、Microsoft Purview 許可タイプの RBAC ポリシー内のMicrosoft Entra プリンシパルにアクセスできます (そのようなポリシーのスコープがサブスクリプション、リソース グループ、またはストレージ アカウントの場合)。
制限
- ストレージ アカウントによって適用できる Microsoft Purview ポリシーの制限は、サブスクリプションあたり 100 MB で、約 5,000 ポリシーに相当します。
既知の問題
ポリシーの作成に関連する既知の問題
- 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 | |
次の手順
ブログ、デモ、および関連するチュートリアルを確認します。
- Azure Storage のアクセス ポリシーのデモ
- ドキュメント: Microsoft Purview データ所有者ポリシーの概念
- ドキュメント: サブスクリプションまたはリソース グループ内のすべてのデータ ソースへのアクセスをプロビジョニングする
- ブログ: Microsoft Purview の新機能 microsoft Ignite 2021
- ブログ: フォルダー レベルのアクセス許可が付与されている場合のデータへのアクセス
- ブログ: ファイル レベルのアクセス許可が付与されている場合のデータへのアクセス
- ブログ: API を使用して、エンタープライズ内のデータ資産へのアクセス権をユーザーに付与する