Esercitazione: Usare le API REST per gestire il controllo di accesso in base ai ruoli nelle raccolte Microsoft Purview

Nota

Microsoft Purview Data Catalog (versione classica), Data Health Insights (versione classica) e Purview Workflow (versione classica) non accettano più nuovi clienti e questi servizi, in precedenza Azure Purview, sono ora in modalità di supporto tecnico.

Nell'agosto 2021, il controllo degli accessi 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 di accesso più preciso e granulare sulle origini dati analizzate da Microsoft Purview. La modifica consente inoltre alle organizzazioni di controllare il diritto di accesso e l'uso corretto dei propri dati.

Questa esercitazione illustra l'uso dettagliato delle API dei criteri dei metadati di Microsoft Purview, che consentono di aggiungere utenti, gruppi o entità servizio a una raccolta e di gestire o rimuovere i loro ruoli all'interno di tale raccolta. Le API REST sono un metodo alternativo all'uso del portale di Azure o del portale di governance di Microsoft Purview per ottenere lo stesso controllo granulare degli accessi basato sui ruoli.

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 API sui criteri dei metadati

La tabella seguente offre una panoramica della documentazione di riferimento dell'API dei criteri dei 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 verranno FabrikamPurviewAccount.purview.azure.com. Il parametro "api-version" è soggetto a modifiche. Vedere la documentazione dell'API REST dei criteri dei 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 dei 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 dei metadati usando un nome di raccolta specificato (il nome casuale di sei caratteri generato da Microsoft Purview quando crea i criteri).
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 dei metadati usando un ID criteri specificato. L'ID criteri è in formato GUID.
Leggere tutti i criteri dei metadati GET https://{pv-acc-name}.purview.azure.com /policystore/metadataPolicies?&api-version=2021-07-01 Legge tutti i criteri dei metadati dall'account Microsoft Purview. Puoi scegliere un determinato criterio con cui lavorare dall'elenco di output JSON generato da questa API.
Criterio di aggiornamento/inserimento dei metadati PUT https://{pv-acc-name}.purview.azure.com /policystore/metadataPolicies/{policyId}?&api-version=2021-07-01 Aggiornamenti dei criteri dei metadati usando un ID criteri specificato. L'ID criteri è in formato GUID.

Riepilogo dell'API delle raccolte di cataloghi Microsoft Purview

La tabella seguente offre una panoramica delle API delle raccolte di Microsoft Purview. Per la documentazione completa su ogni API, seleziona l'operazione API nella colonna di sinistra.

Operazione Descrizione
Creare o aggiornare una raccolta Crea o aggiorna un'entità della raccolta.
Elimina raccolta Elimina un'entità della raccolta.
Ottieni raccolta Ottiene una raccolta.
Ottieni il percorso di raccolta Ottiene il nome padre e le catene di nomi visualizzati che rappresentano il percorso della raccolta.
Elencare nomi di raccolte figlio Elenca i nomi delle raccolte figlio nella raccolta.
Elencare 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 di amministratore della raccolta assegnato in Microsoft Purview per eseguire correttamente l'API.

  • Per tutte le API di Microsoft Purview che richiedono {collectionName}, è necessario usare "name" (e non "friendlyName"). Sostituire {collectionName} con la stringa del nome della raccolta alfanumerica di sei caratteri effettiva.

    Nota

    Questo nome è diverso dal nome descrittivo visualizzato che hai fornito al momento della creazione della raccolta. Se non hai {collectionName} a portata di mano, usa l'API List Collections per selezionare il nome della raccolta di sei caratteri dall'output JSON.

Ecco un esempio di file JSON:

{
    "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 il criterio.

Versione: il 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. Esegui questo aggiornamento ogni volta prima di chiamare l'API Update Policy (PUT), in modo da avere sempre la versione più recente del file JSON.

Regole decisionali: elencare le regole e gli effetti 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. Per comprendere al meglio le API dei criteri dei metadati di Microsoft Purview, è consigliabile seguire le istruzioni nelle sezioni successive in sequenza.

Ottenere tutti i ruoli dei metadati

Per elencare tutti i ruoli di autorizzazione di accesso ai metadati disponibili, eseguire uno dei seguenti comandi, 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.

Nella tabella seguente sono elencati i ruoli di metadati predefiniti:

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 lettura, scrittura di raccolte, registrazione di origini dati e attivazione di analisi.
purviewmetadatarole_builtin_collection-amministratore 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 delle entità servizio (SPN) dalla raccolta, i diritti di gestione e la concessione o la revoca dell'accesso. In alcuni casi, l'amministratore della raccolta potrebbe essere diverso dal creatore 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 le risorse 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 le classificazioni, le etichette di riservatezza, le informazioni dettagliate e le risorse 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 di 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 delle raccolte in formato albero, dalla raccolta principale in alto a tutti i relativi criteri secondari. Ogni raccolta figlio contiene ognuno degli 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 particolare raccolta fornendo {collectionName} o {PolicyID}.

Come descritto nelle due sezioni seguenti, entrambe le API hanno lo stesso scopo e gli output JSON di entrambe sono esattamente gli stessi.

Ottenere i criteri dei 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
  1. Il nome dell'account Microsoft Purview è {your_purview_account_name}. Sostituirlo con il nome dell'account Microsoft Purview.

  2. Nell'output JSON dell'API precedente, "Get All Metadata Policies", cerca la sezione seguente:

    { "type": "CollectionReference", "referenceName": "7xkdg2"}

  3. Sostituisci "{collectionName}" nell'URL dell'API con il valore di "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

  4. Esegui la seguente API:

    {
      "name": "policy_qu45fs",
      "id": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
      "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 dei metadati della raccolta usando l'ID criteri

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
  1. Il nome dell'account Microsoft Purview è {your_purview_account_name}. Sostituirlo con il nome dell'account Microsoft Purview.

  2. Nell'output JSON dell'API precedente, "Get All Metadata Policies", cerca la sezione seguente:

    {.... "name": "policy_qu45fs", "id": "{policy-guid}", "version": N ....}

  3. Sostituire "{policyId}" nell'URL dell'API con il valore di "id". Ad esempio, se il "{policy-guid}" è "aaaabbbb-0000-cccc-1111-dddd222eeee", l'URL dell'API verrà formattato come:

    https://{your_purview_account_name}.purview.azure.com/policystore/metadataPolicies/aaaabbbb-0000-cccc-1111-dddd2222eeee?api-version=2021-07-01

  4. Eseguire ora l'API seguente:

    Nota

    L'output di questa chiamata API e della chiamata API precedente è lo stesso. Come accennato in precedenza, puoi scegliere una delle due opzioni.

{
  "name": "policy_qu45fs",
  "id": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
  "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 viene aggiornato il 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 PUT REST.

Se si aggiunge o si rimuove un utente, un gruppo o un'entità servizio, si seguirà lo stesso processo API.

  1. Specifica l'ID oggetto utente, gruppo o entità servizio {guid} nella matrice "attributeValueIncludedIn" del codice JSON.

  2. Cercare l'output JSON dell'API Get-Policy-by-ID per la matrice "attributeValueIncludedIn" nel passaggio precedente e aggiungere o rimuovere l'ID oggetto dell'utente, del gruppo o dell'entità servizio nella matrice. Se non si è sicuri di come recuperare l'ID oggetto entità utente, gruppo o servizio, vedere Get-MgUser.

  3. Nella mappatura JSON sono presenti più sezioni per ognuno dei quattro ruoli. Per il ruolo Autorizzazioni amministratore raccolta, utilizzare la sezione con l'ID denominata "purviewmetadatarole_builtin_collection-amministratore". Allo stesso modo, usa la sezione corrispondente per gli altri ruoli.

  4. Per comprendere meglio l'operazione di aggiunta/rimozione, esamina attentamente la differenza tra l'output JSON dell'API precedente e l'output seguente. Nell'output JSON seguente è stato aggiunto l'ID utente "aaaabbbb-0000-cccc-1111-dddd222eeee" come amministratore della raccolta.

{
  "name": "policy_qu45fs",
  "id": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
  "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",
                "00aa00aa-bb11-cc22-dd33-44ee44ee44ee"
              ]
            },
            {
              "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 di Microsoft Purview è l'amministratore della raccolta radice, ovvero l'amministratore del primo livello della gerarchia della raccolta. Tuttavia, in alcuni casi, 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 l'ID oggetto del nuovo amministratore della raccolta radice. Come accennato in precedenza, l'ID oggetto può essere quello di qualsiasi utente, gruppo o entità servizio.

{"objectId": "{guid}"}

Nota

Gli utenti che chiamano questa API devono avere autorizzazioni di proprietario o account utente e autenticazione (UAA) per l'account Microsoft Purview per eseguire un'azione di scrittura sull'account.

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.

Passaggi successivi