Esercitazione: Usare le API REST per gestire il controllo degli accessi in base al ruolo nelle raccolte di Microsoft Purview
Nell'agosto 2021, il controllo di accesso in Microsoft Purview è passato da Azure Identity & Access Management (IAM) (piano di controllo) alle raccolte di Microsoft Purview (piano dati). Questa modifica offre ai curatori e agli amministratori dei dati aziendali un controllo degli accessi più preciso e granulare sulle origini dati analizzate da Microsoft Purview. La modifica consente inoltre alle organizzazioni di controllare l'accesso corretto e l'uso corretto dei dati.
Questa esercitazione illustra l'utilizzo dettagliato delle API dei criteri di metadati di Microsoft Purview per aggiungere utenti, gruppi o entità servizio a una raccolta e gestire o rimuovere i ruoli all'interno di tale raccolta. Le API REST sono un metodo alternativo all'uso della portale di Azure o del portale di governance di Microsoft Purview per ottenere lo stesso controllo degli accessi granulare in base al ruolo.
Per altre informazioni sui ruoli predefiniti in Microsoft Purview, vedere la guida alle autorizzazioni di Microsoft Purview. La guida esegue il mapping dei ruoli al livello di autorizzazioni di accesso concesse agli utenti.
Riepilogo delle informazioni di riferimento sulle API dei criteri di metadati
Nella tabella seguente viene fornita una panoramica delle informazioni di riferimento sull'API dei criteri di metadati di Microsoft Purview.
Nota
Sostituire {pv-acc-name} con il nome dell'account Microsoft Purview prima di eseguire queste API. Ad esempio, se il nome dell'account Microsoft Purview è FabrikamPurviewAccount, gli endpoint API diventeranno FabrikamPurviewAccount.purview.azure.com. Il parametro "api-version" è soggetto a modifiche. Fare riferimento alla documentazione dell'API REST dei criteri di metadati di Microsoft Purview per la versione più recente dell'API e la firma dell'API.
Funzione API | Metodo REST | Endpoint API | Descrizione |
---|---|---|---|
Leggere tutti i ruoli dei metadati | GET | https://{pv-acc-name}.purview.azure.com /policystore/metadataroles?&api-version=2021-07-01 | Legge tutti i ruoli dei metadati dall'account Microsoft Purview. |
Leggere i criteri di metadati in base al nome della raccolta | GET | https://{pv-acc-name}.purview.azure.com /policystore/collections/{collectionName}/metadataPolicy?&api-version=2021-07-01 | Legge i criteri di metadati usando un nome di raccolta specificato (il nome casuale di sei caratteri generato da Microsoft Purview quando crea il criterio). |
Leggere i criteri dei metadati in base a PolicyID | GET | https://{pv-acc-name}.purview.azure.com /policystore/metadataPolicies/{policyId}?&api-version=2021-07-01 | Legge i criteri di metadati usando un ID criterio specificato. L'ID criterio è in formato GUID. |
Leggere tutti i criteri di metadati | GET | https://{pv-acc-name}.purview.azure.com /policystore/metadataPolicies?&api-version=2021-07-01 | Legge tutti i criteri di metadati dall'account Microsoft Purview. È possibile scegliere un determinato criterio da usare dall'elenco di output JSON generato da questa API. |
Aggiornare/PUT i criteri dei metadati | PUT | https://{pv-acc-name}.purview.azure.com /policystore/metadataPolicies/{policyId}?&api-version=2021-07-01 | Aggiornamenti i criteri di metadati usando un ID criterio specificato. L'ID criterio è in formato GUID. |
Riepilogo delle informazioni di riferimento sulle API delle raccolte di cataloghi di Microsoft Purview
Nella tabella seguente viene fornita una panoramica delle API delle raccolte di Microsoft Purview. Per la documentazione completa su ogni API, selezionare l'operazione API nella colonna a sinistra.
Operazione | Descrizione |
---|---|
Creare o aggiornare la raccolta | Crea o aggiorna un'entità di raccolta. |
Elimina raccolta | Elimina un'entità di raccolta. |
Ottenere la raccolta | Ottiene una raccolta. |
Ottenere il percorso della raccolta | Ottiene il nome padre e le catene di nomi visualizzati che rappresentano il percorso della raccolta. |
Elencare i nomi delle raccolte figlio | Elenca i nomi delle raccolte figlio nell'insieme. |
Elencare le raccolte | Elenca le raccolte nell'account. |
Se si usa l'API, l'entità servizio, l'utente o il gruppo che esegue l'API deve avere un ruolo Raccolta Amministrazione assegnato in Microsoft Purview per eseguire correttamente questa API.
Per tutte le API Microsoft Purview che richiedono {collectionName}, è necessario usare "name" (e non "friendlyName"). Sostituire {collectionName} con la stringa effettiva del nome della raccolta alfanumerica a sei caratteri.
Nota
Questo nome è diverso dal nome visualizzato descrittivo specificato al momento della creazione della raccolta. Se {collectionName} non è utile, usare l'API Raccolte elenchi per selezionare il nome della raccolta di sei caratteri dall'output JSON.
Ecco un file JSON di esempio:
{
"name": "74dhe7",
"friendlyName": "Friendly Name",
"parentCollection": {
"type": "CollectionReference",
"referenceName": "{your_purview_account_name}"
},
"systemData": {
"createdBy": "{guid}",
"createdByType": "Application",
"createdAt": "2021-08-26T21:21:51.2646627Z",
"lastModifiedBy": "7f8d47e2-330c-42f0-8744-fcfb1ecb3ea0",
"lastModifiedByType": "Application",
"lastModifiedAt": "2021-08-26T21:21:51.2646628Z"
},
"collectionProvisioningState": "Succeeded"
}
Descrizione JSON dei criteri
Ecco alcuni degli identificatori importanti nell'output JSON ricevuto dalle API di raccolta:
Nome: nome del criterio.
Id: identificatore univoco per i criteri.
Versione: numero di versione più recente del criterio.
Importante
Il numero di versione viene incrementato ogni volta che viene chiamata l'API Update-Metadata-Policy. Assicurarsi di recuperare la copia più recente del criterio richiamando l'API Get-Policy-by-Policy-ID. Eseguire questo aggiornamento ogni volta prima di chiamare l'API PUT (Update Policy), in modo da avere sempre la versione più recente del file JSON.
DecisionRules: elenca le regole e l'effetto di questo criterio. Per i criteri di metadati, l'effetto è sempre "Permit".
Aggiungere o rimuovere utenti da una raccolta o da un ruolo
Usare le API REST di Microsoft Purview per aggiungere o rimuovere un utente, un gruppo o un'entità servizio da una raccolta o un ruolo. L'utilizzo dettagliato dell'API viene fornito insieme agli output JSON di esempio. È consigliabile seguire le istruzioni nelle sezioni successive in sequenza per comprendere meglio le API dei criteri di metadati di Microsoft Purview.
Ottenere tutti i ruoli dei metadati
Per elencare tutti i ruoli di autorizzazione di accesso ai metadati disponibili, eseguire uno dei comandi seguenti, a seconda del portale in uso:
Portale di governance di Microsoft Purview classico:
GET https://{your_purview_account_name}.purview.azure.com/policystore/metadataroles?api-version=2021-07-01
Nuovo portale di Microsoft Purview:
GET https://api.purview-service.microsoft.com/policystore/metadataroles?api-version=2021-07-01
Il codice JSON di output descriverà i ruoli e le autorizzazioni associate in questo formato.
I ruoli dei metadati predefiniti sono elencati nella tabella seguente:
ID ruolo | Autorizzazioni | Descrizione del ruolo |
---|---|---|
purviewmetadatarole_builtin_data-source-administrator | Microsoft.Purview/accounts/scan/read Microsoft.Purview/accounts/scan/write Microsoft.Purview/accounts/collection/read | Concede l'accesso ad altri utenti per la lettura, la scrittura di raccolte, la registrazione di origini dati e l'analisi dei trigger. |
purviewmetadatarole_builtin_collection-administrator | Microsoft.Purview/accounts/collection/read Microsoft.Purview/accounts/collection/write | Accesso completo a livello di amministratore all'intera raccolta, inclusi l'aggiunta o la rimozione di utenti e nomi di entità servizio (SPN) dalla raccolta, diritti di gestione e concessione o revoca dell'accesso. In alcuni casi, l'amministratore della raccolta potrebbe essere diverso dall'autore della raccolta. |
purviewmetadatarole_builtin_purview lettore | Microsoft.Purview/accounts/data/read Microsoft.Purview/accounts/collection/read | Concede solo l'accesso in lettura alla gestione dei dati e a tutti i metadati, incluse le classificazioni, le etichette di riservatezza, le informazioni dettagliate e gli asset di lettura in una raccolta, ad eccezione delle associazioni di analisi. |
purviewmetadatarole_builtin_data-curatore | Microsoft.Purview/accounts/data/read Microsoft.Purview/accounts/data/write Microsoft.Purview/accounts/collection/read | Concede l'accesso completo alla gestione dei dati e a tutti i metadati, incluse classificazioni, etichette di riservatezza, informazioni dettagliate e asset di lettura in una raccolta, ad eccezione delle associazioni di analisi. |
purviewmetadatarole_builtin_data-share-contributor | Microsoft.Purview/accounts/share/read Microsoft.Purview/accounts/share/write | Concede l'accesso alle condivisioni dati come collaboratore. |
{
"values": [
{
"id": "purviewmetadatarole_builtin_data-curator",
"name": "data-curator",
"type": "Microsoft.Purview/role",
"properties": {
"provisioningState": "Provisioned",
"roleType": "BuiltIn",
"friendlyName": "Data Curator",
"cnfCondition": [
[
{
"attributeName": "request.azure.dataAction",
"attributeValueIncludedIn": [
"Microsoft.Purview/accounts/data/read",
"Microsoft.Purview/accounts/data/write",
"Microsoft.Purview/accounts/collection/read"
]
}
]
],
"version": 1
}
},
{
"id": "purviewmetadatarole_builtin_data-source-administrator",
"name": "data-source-administrator",
"type": "Microsoft.Purview/role",
"properties": {
"provisioningState": "Provisioned",
"roleType": "BuiltIn",
"friendlyName": "Data Source Administrator",
"cnfCondition": [
[
{
"attributeName": "request.azure.dataAction",
"attributeValueIncludedIn": [
"Microsoft.Purview/accounts/scan/read",
"Microsoft.Purview/accounts/scan/write",
"Microsoft.Purview/accounts/collection/read"
]
}
]
],
"version": 1
}
},
{
"id": "purviewmetadatarole_builtin_collection-administrator",
"name": "collection-administrator",
"type": "Microsoft.Purview/role",
"properties": {
"provisioningState": "Provisioned",
"roleType": "BuiltIn",
"friendlyName": "Collection Administrator",
"cnfCondition": [
[
{
"attributeName": "request.azure.dataAction",
"attributeValueIncludedIn": [
"Microsoft.Purview/accounts/collection/read",
"Microsoft.Purview/accounts/collection/write"
]
}
]
],
"version": 1
}
},
{
"id": "purviewmetadatarole_builtin_purview-reader",
"name": "purview-reader",
"type": "Microsoft.Purview/role",
"properties": {
"provisioningState": "Provisioned",
"roleType": "BuiltIn",
"friendlyName": "Microsoft Purview Reader",
"cnfCondition": [
[
{
"attributeName": "request.azure.dataAction",
"attributeValueIncludedIn": [
"Microsoft.Purview/accounts/data/read",
"Microsoft.Purview/accounts/collection/read"
]
}
]
],
"version": 1
}
},
{
"id": "purviewmetadatarole_builtin_data-share-contributor",
"name": "data-share-contributor",
"type": "Microsoft.Purview/role",
"properties": {
"provisioningState": "Provisioned",
"roleType": "BuiltIn",
"friendlyName": "Data share contributor",
"cnfCondition": [
[
{
"attributeName": "request.azure.dataAction",
"attributeValueIncludedIn": [
"Microsoft.Purview/accounts/share/read",
"Microsoft.Purview/accounts/share/write"
]
}
]
],
"version": 1
}
}
]
}
Ottenere tutti i criteri di metadati
Portale di governance di Microsoft Purview classico:
GET https://{your_purview_account_name}.purview.azure.com/policystore/metadataPolicies?api-version=2021-07-01
Nuovo portale di Microsoft Purview:
GET https://api.purview-service.microsoft.com/policystore/metadataPolicies?api-version=2021-07-01
Il comando precedente elenca tutti i criteri di metadati disponibili nell'intera gerarchia di raccolte in formato albero, dalla raccolta radice nella parte superiore a tutti i relativi criteri figlio. Ogni raccolta figlio contiene ognuno dei relativi elementi figlio di livello successivo.
Esempio:
{
"values": [
{
"name": "policy_FabrikamPurview",
"id": "9b2f1cb9-584c-4a16-811e-9232884b5cac",
"version": 30,
"properties": {
"description": "",
"decisionRules": [
{
"kind": "decisionrule",
"effect": "Permit",
"dnfCondition": [
[
{
"attributeName": "resource.purview.collection",
"attributeValueIncludes": "fabrikampurview"
},
{
"fromRule": "permission:fabrikampurview",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "permission:fabrikampurview"
}
]
]
}
],
"attributeRules": [
{
"kind": "attributerule",
"id": "purviewmetadatarole_builtin_collection-administrator:fabrikampurview",
"name": "purviewmetadatarole_builtin_collection-administrator:fabrikampurview",
"dnfCondition": [
[
{
"attributeName": "principal.microsoft.id",
"attributeValueIncludedIn": [
"2f656762-e440-4b62-9eb6-a991d17d64b0",
"04314867-60a4-4e5a-ae16-8e5856f415d9",
"8988fe5c-5736-4179-9435-0a64c273b90b",
"6d563253-1d5b-48f2-baaa-5489f22ddce9",
"26f98046-5b02-4fa9-b709-e0519c658891",
"73fc02dc-becd-468b-a2a3-82238e722dae"
]
},
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator",
"attributeName": "derived.purview.role",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator"
}
],
[
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator",
"attributeName": "derived.purview.role",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator"
},
{
"attributeName": "principal.microsoft.groups",
"attributeValueIncludedIn": [
"ffd851fa-86ec-431b-95ea-8b84d5012383",
"cf84b126-4384-4952-91f1-7f705b25e569",
"5046aba1-5b81-411c-8fec-b84600f3f08b",
"b055a5c6-a04e-4d1a-8524-001ad81bfb28",
"cc194892-92fa-4ce3-96ae-1f98bef8211c"
]
}
]
]
},
{
"kind": "attributerule",
"id": "purviewmetadatarole_builtin_data-curator:fabrikampurview",
"name": "purviewmetadatarole_builtin_data-curator:fabrikampurview",
"dnfCondition": [
[
{
"attributeName": "principal.microsoft.id",
"attributeValueIncludedIn": [
"2f656762-e440-4b62-9eb6-a991d17d64b0",
"649f56ab-2dd2-40de-a731-3d3f28e7af92",
"c29a5809-f9ec-49fd-b762-2d4d64abb93e",
"04314867-60a4-4e5a-ae16-8e5856f415d9",
"73fc02dc-becd-468b-a2a3-82238e722dae",
"517a27d2-39ba-4c91-a032-dd9ecf8ad6f1",
"6d563253-1d5b-48f2-baaa-5489f22ddce9"
]
},
{
"fromRule": "purviewmetadatarole_builtin_data-curator",
"attributeName": "derived.purview.role",
"attributeValueIncludes": "purviewmetadatarole_builtin_data-curator"
}
],
[
{
"fromRule": "purviewmetadatarole_builtin_data-curator",
"attributeName": "derived.purview.role",
"attributeValueIncludes": "purviewmetadatarole_builtin_data-curator"
},
{
"attributeName": "principal.microsoft.groups",
"attributeValueIncludedIn": [
"b055a5c6-a04e-4d1a-8524-001ad81bfb28",
"cc194892-92fa-4ce3-96ae-1f98bef8211c",
"5046aba1-5b81-411c-8fec-b84600f3f08b"
]
}
]
]
},
{
"kind": "attributerule",
"id": "purviewmetadatarole_builtin_data-source-administrator:fabrikampurview",
"name": "purviewmetadatarole_builtin_data-source-administrator:fabrikampurview",
"dnfCondition": [
[
{
"attributeName": "principal.microsoft.id",
"attributeValueIncludedIn": [
"2f656762-e440-4b62-9eb6-a991d17d64b0",
"04314867-60a4-4e5a-ae16-8e5856f415d9",
"517a27d2-39ba-4c91-a032-dd9ecf8ad6f1",
"6d563253-1d5b-48f2-baaa-5489f22ddce9"
]
},
{
"fromRule": "purviewmetadatarole_builtin_data-source-administrator",
"attributeName": "derived.purview.role",
"attributeValueIncludes": "purviewmetadatarole_builtin_data-source-administrator"
}
],
[
{
"fromRule": "purviewmetadatarole_builtin_data-source-administrator",
"attributeName": "derived.purview.role",
"attributeValueIncludes": "purviewmetadatarole_builtin_data-source-administrator"
},
{
"attributeName": "principal.microsoft.groups",
"attributeValueIncludedIn": [
"b055a5c6-a04e-4d1a-8524-001ad81bfb28",
"cc194892-92fa-4ce3-96ae-1f98bef8211c",
"d34eb741-be5e-4098-90d7-eca8d4a5153f",
"664ec992-9af0-4773-88f2-dc39edc46f6f",
"5046aba1-5b81-411c-8fec-b84600f3f08b"
]
}
]
]
},
{
"kind": "attributerule",
"id": "permission:fabrikampurview",
"name": "permission:fabrikampurview",
"dnfCondition": [
[
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator:fabrikampurview",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator:fabrikampurview"
}
],
[
{
"fromRule": "purviewmetadatarole_builtin_purview-reader:fabrikampurview",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "purviewmetadatarole_builtin_purview-reader:fabrikampurview"
}
],
[
{
"fromRule": "purviewmetadatarole_builtin_data-curator:fabrikampurview",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "purviewmetadatarole_builtin_data-curator:fabrikampurview"
}
],
[
{
"fromRule": "purviewmetadatarole_builtin_data-source-administrator:fabrikampurview",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "purviewmetadatarole_builtin_data-source-administrator:fabrikampurview"
}
]
]
}
],
"collection": {
"type": "CollectionReference",
"referenceName": "fabrikampurview"
}
}
},
{
"name": "policy_b2zpf1",
"id": "12b0bb28-2acc-413e-8fe1-179ff9cc54c3",
"version": 0,
"properties": {
"description": "",
"decisionRules": [
{
"kind": "decisionrule",
"effect": "Permit",
"dnfCondition": [
[
{
"attributeName": "resource.purview.collection",
"attributeValueIncludes": "b2zpf1"
},
{
"fromRule": "permission:b2zpf1",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "permission:b2zpf1"
}
]
]
}
],
"attributeRules": [
{
"kind": "attributerule",
"id": "purviewmetadatarole_builtin_collection-administrator:b2zpf1",
"name": "purviewmetadatarole_builtin_collection-administrator:b2zpf1",
"dnfCondition": [
[
{
"attributeName": "principal.microsoft.id",
"attributeValueIncludedIn": [
"2f656762-e440-4b62-9eb6-a991d17d64b0"
]
},
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator",
"attributeName": "derived.purview.role",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator"
}
],
[
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator:ukx7pq",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator:ukx7pq"
}
]
]
},
{
"kind": "attributerule",
"id": "permission:b2zpf1",
"name": "permission:b2zpf1",
"dnfCondition": [
[
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator:b2zpf1",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator:b2zpf1"
}
],
[
{
"fromRule": "permission:ukx7pq",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "permission:ukx7pq"
}
]
]
}
],
"collection": {
"type": "CollectionReference",
"referenceName": "b2zpf1"
},
"parentCollectionName": "ukx7pq"
}
},
{
"name": "policy_7wte2n",
"id": "a72084e4-ccab-4aec-a364-08ab001e4999",
"version": 0,
"properties": {
"description": "",
"decisionRules": [
{
"kind": "decisionrule",
"effect": "Permit",
"dnfCondition": [
[
{
"attributeName": "resource.purview.collection",
"attributeValueIncludes": "7wte2n"
},
{
"fromRule": "permission:7wte2n",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "permission:7wte2n"
}
]
]
}
],
"attributeRules": [
{
"kind": "attributerule",
"id": "purviewmetadatarole_builtin_collection-administrator:7wte2n",
"name": "purviewmetadatarole_builtin_collection-administrator:7wte2n",
"dnfCondition": [
[
{
"attributeName": "principal.microsoft.id",
"attributeValueIncludedIn": [
"2f656762-e440-4b62-9eb6-a991d17d64b0"
]
},
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator",
"attributeName": "derived.purview.role",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator"
}
],
[
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator:ukx7pq",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator:ukx7pq"
}
]
]
},
{
"kind": "attributerule",
"id": "permission:7wte2n",
"name": "permission:7wte2n",
"dnfCondition": [
[
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator:7wte2n",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator:7wte2n"
}
],
[
{
"fromRule": "permission:ukx7pq",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "permission:ukx7pq"
}
]
]
}
],
"collection": {
"type": "CollectionReference",
"referenceName": "7wte2n"
},
"parentCollectionName": "ukx7pq"
}
}
]
}
Ottenere i criteri di metadati selezionati
È possibile usare una delle due API per recuperare la struttura JSON dei criteri di metadati di una raccolta specificando {collectionName} o {PolicyID}.
Come descritto nelle due sezioni seguenti, entrambe le API hanno lo stesso scopo e gli output JSON di entrambi sono esattamente gli stessi.
Ottenere i criteri di metadati della raccolta usando il nome della raccolta
Portale di governance di Microsoft Purview classico:
GET https://{your_purview_account_name}.purview.azure.com/policystore/collections/{collectionName}/metadataPolicy?api-version=2021-07-01
Nuovo portale di Microsoft Purview:
GET https://api.purview-service.microsoft.com/policystore/collections/{collectionName}/metadataPolicy?api-version=2021-07-01
Il nome dell'account Microsoft Purview è {your_purview_account_name}. Sostituirlo con il nome dell'account Microsoft Purview.
Nell'output JSON dell'API precedente, "Recupera tutti i criteri di metadati", cercare la sezione seguente:
{ "type": "CollectionReference", "referenceName": "7xkdg2"}
Sostituire "{collectionName}" nell'URL DELL'API con il valore "referenceName": "{6-char-collection-name}". Ad esempio, se il nome della raccolta di sei caratteri è "7xkdg2", l'URL dell'API verrà formattato come:
https://{your_purview_account_name}.purview.azure.com/policystore/collections/7xkdg2/metadataPolicy?api-version=2021-07-01
Eseguire l'API seguente:
{ "name": "policy_qu45fs", "id": "c6639bb2-9c41-4be0-912b-775750e725de", "version": 0, "properties": { "description": "", "decisionRules": [ { "kind": "decisionrule", "effect": "Permit", "dnfCondition": [ [ { "attributeName": "resource.purview.collection", "attributeValueIncludes": "qu45fs" }, { "fromRule": "permission:qu45fs", "attributeName": "derived.purview.permission", "attributeValueIncludes": "permission:qu45fs" } ] ] } ], "attributeRules": [ { "kind": "attributerule", "id": "purviewmetadatarole_builtin_collection-administrator:qu45fs", "name": "purviewmetadatarole_builtin_collection-administrator:qu45fs", "dnfCondition": [ [ { "attributeName": "principal.microsoft.id", "attributeValueIncludedIn": [ "2f656762-e440-4b62-9eb6-a991d17d64b0" ] }, { "fromRule": "purviewmetadatarole_builtin_collection-administrator", "attributeName": "derived.purview.role", "attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator" } ], [ { "fromRule": "purviewmetadatarole_builtin_collection-administrator:fabrikampurview", "attributeName": "derived.purview.permission", "attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator:fabrikampurview" } ] ] }, { "kind": "attributerule", "id": "permission:qu45fs", "name": "permission:qu45fs", "dnfCondition": [ [ { "fromRule": "purviewmetadatarole_builtin_collection-administrator:qu45fs", "attributeName": "derived.purview.permission", "attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator:qu45fs" } ], [ { "fromRule": "permission:fabrikampurview", "attributeName": "derived.purview.permission", "attributeValueIncludes": "permission:fabrikampurview" } ] ] } ], "collection": { "type": "CollectionReference", "referenceName": "qu45fs" }, "parentCollectionName": "fabrikampurview" } }
Ottenere i criteri di metadati della raccolta usando l'ID criterio
Portale di governance di Microsoft Purview classico:
GET https://{your_purview_account_name}.purview.azure.com/policystore/metadataPolicies/{policyId}?api-version=2021-07-01
Nuovo portale di Microsoft Purview:
GET https://api.purview-service.microsoft.com/policystore/metadataPolicies/{policyId}?api-version=2021-07-01
Il nome dell'account Microsoft Purview è {your_purview_account_name}. Sostituirlo con il nome dell'account Microsoft Purview.
Nell'output JSON dell'API precedente, "Recupera tutti i criteri di metadati", cercare la sezione seguente:
{.... "name": "policy_qu45fs", "id": "{policy-guid}", "version": N ....}
Sostituire "{policyId}" nell'URL DELL'API con il valore "id". Ad esempio, se "{policy-guid}" è "c6639bb2-9c41-4be0-912b-775750e725de", l'URL dell'API verrà formattato come:
https://{your_purview_account_name}.purview.azure.com/policystore/metadataPolicies/c6639bb2-9c41-4be0-912b-775750e725de?api-version=2021-07-01
Eseguire ora l'API seguente:
Nota
L'output di questa chiamata API e della chiamata API precedente è lo stesso. Come accennato in precedenza, è possibile scegliere uno dei due.
{
"name": "policy_qu45fs",
"id": "c6639bb2-9c41-4be0-912b-775750e725de",
"version": 0,
"properties": {
"description": "",
"decisionRules": [
{
"kind": "decisionrule",
"effect": "Permit",
"dnfCondition": [
[
{
"attributeName": "resource.purview.collection",
"attributeValueIncludes": "qu45fs"
},
{
"fromRule": "permission:qu45fs",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "permission:qu45fs"
}
]
]
}
],
"attributeRules": [
{
"kind": "attributerule",
"id": "purviewmetadatarole_builtin_collection-administrator:qu45fs",
"name": "purviewmetadatarole_builtin_collection-administrator:qu45fs",
"dnfCondition": [
[
{
"attributeName": "principal.microsoft.id",
"attributeValueIncludedIn": [
"2f656762-e440-4b62-9eb6-a991d17d64b0"
]
},
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator",
"attributeName": "derived.purview.role",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator"
}
],
[
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator:fabrikampurview",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator:fabrikampurview"
}
]
]
},
{
"kind": "attributerule",
"id": "permission:qu45fs",
"name": "permission:qu45fs",
"dnfCondition": [
[
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator:qu45fs",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator:qu45fs"
}
],
[
{
"fromRule": "permission:fabrikampurview",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "permission:fabrikampurview"
}
]
]
}
],
"collection": {
"type": "CollectionReference",
"referenceName": "qu45fs"
},
"parentCollectionName": "fabrikampurview"
}
}
Aggiornare i criteri di raccolta
PUT https://{your_purview_account_name}.purview.azure.com/policystore/metadataPolicies/{policyId}?api-version=2021-07-01
In questa sezione si aggiorna il codice JSON dei criteri ottenuto nel passaggio precedente aggiungendo o rimuovendo un utente, un gruppo o un'entità servizio dalla raccolta. È quindi possibile eseguirne il push nel servizio Microsoft Purview usando un metodo REST PUT.
Sia che si stia aggiungendo o rimuovendo un utente, un gruppo o un'entità servizio, si seguirà lo stesso processo API.
Specificare l'ID oggetto utente, gruppo o entità servizio {guid} nella matrice "attributeValueIncludedIn" del codice JSON.
Cercare l'output JSON dell'API Get-Policy-by-ID per la matrice "attributeValueIncludedIn" nel passaggio precedente e aggiungere o rimuovere l'ID oggetto utente, gruppo o entità servizio nella matrice. Se non si è certi di come recuperare l'ID oggetto utente, gruppo o entità servizio, vedere Get-AzureADUser.
Il mapping JSON include più sezioni per ognuno dei quattro ruoli. Per il ruolo autorizzazioni amministratore raccolta, usare la sezione contenente l'ID denominato "purviewmetadatarole_builtin_collection-administrator". Analogamente, usare la sezione corrispondente per gli altri ruoli.
Per comprendere meglio l'operazione di aggiunta/rimozione, esaminare attentamente la differenza tra l'output JSON dell'API precedente e l'output seguente. Nell'output JSON seguente è stato aggiunto l'ID utente "3a3a3a3a3a-2c2c-4b4b-1c1c-2a3b4c5d6e7f" come amministratore della raccolta.
{
"name": "policy_qu45fs",
"id": "c6639bb2-9c41-4be0-912b-775750e725de",
"version": 0,
"properties": {
"description": "",
"decisionRules": [
{
"kind": "decisionrule",
"effect": "Permit",
"dnfCondition": [
[
{
"attributeName": "resource.purview.collection",
"attributeValueIncludes": "qu45fs"
},
{
"fromRule": "permission:qu45fs",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "permission:qu45fs"
}
]
]
}
],
"attributeRules": [
{
"kind": "attributerule",
"id": "purviewmetadatarole_builtin_collection-administrator:qu45fs",
"name": "purviewmetadatarole_builtin_collection-administrator:qu45fs",
"dnfCondition": [
[
{
"attributeName": "principal.microsoft.id",
"attributeValueIncludedIn": [
"2f656762-e440-4b62-9eb6-a991d17d64b0",
"3a3a3a3a-2c2c-4b4b-1c1c-2a3b4c5d6e7f"
]
},
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator",
"attributeName": "derived.purview.role",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator"
}
],
[
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator:fabrikampurview",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator:fabrikampurview"
}
]
]
},
{
"kind": "attributerule",
"id": "permission:qu45fs",
"name": "permission:qu45fs",
"dnfCondition": [
[
{
"fromRule": "purviewmetadatarole_builtin_collection-administrator:qu45fs",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "purviewmetadatarole_builtin_collection-administrator:qu45fs"
}
],
[
{
"fromRule": "permission:fabrikampurview",
"attributeName": "derived.purview.permission",
"attributeValueIncludes": "permission:fabrikampurview"
}
]
]
}
],
"collection": {
"type": "CollectionReference",
"referenceName": "qu45fs"
},
"parentCollectionName": "fabrikampurview"
}
}
Aggiungere il ruolo Amministratore raccolta radice
Per impostazione predefinita, l'utente che ha creato l'account Microsoft Purview è l'amministratore della raccolta radice, ovvero l'amministratore del livello più alto della gerarchia della raccolta. In alcuni casi, tuttavia, un'organizzazione potrebbe voler modificare l'amministratore della raccolta radice usando l'API.
POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Purview/accounts/{accountName}/addRootCollectionAdmin?api-version=2021-07-01
Per eseguire il comando precedente, è sufficiente passare il nuovo ID oggetto dell'amministratore della raccolta radice. Come accennato in precedenza, l'ID oggetto può essere quello di qualsiasi utente, gruppo o entità servizio.
{"objectId": "{guid}"}
Nota
Per eseguire un'azione di scrittura sull'account, gli utenti che chiamano questa API devono disporre delle autorizzazioni Proprietario o Account utente e autenticazione (UAA) per l'account Microsoft Purview.
Altre risorse
È possibile scegliere di eseguire le API REST di Microsoft Purview usando l'utilità PowerShell. Può essere facilmente installato da PowerShell Gallery. Con questa utilità è possibile eseguire tutti gli stessi comandi, ma da Windows PowerShell.