Dela via


Använda en hanterad identitet för att köra en uppdateringsprincip

Uppdateringsprincipen måste konfigureras med en hanterad identitet i följande scenarier:

  • När uppdateringsprincipfrågan refererar till tabeller i andra databaser.
  • När uppdateringsprincipfrågan refererar till tabeller med en aktiverad säkerhetsprincip på radnivå.

En uppdateringsprincip som konfigurerats med en hanterad identitet utförs för den hanterade identitetens räkning.

I den här artikeln får du lära dig hur du konfigurerar en systemtilldelad eller användartilldelad hanterad identitet och skapar en uppdateringsprincip med den identiteten.

Förutsättningar

Konfigurera en hanterad identitet

Det finns två typer av hanterade identiteter:

  • Systemtilldelad: En systemtilldelad identitet är ansluten till klustret och tas bort när klustret tas bort. Endast en systemtilldelad identitet tillåts per kluster.

  • Användartilldelad: En användartilldelad hanterad identitet är en fristående Azure-resurs. Flera användartilldelade identiteter kan tilldelas till klustret.

Välj någon av följande flikar för att konfigurera önskad hanterad identitetstyp.

  1. Följ stegen för att lägga till en användartilldelad identitet.

  2. I Azure Portal går du till den vänstra menyn i din hanterade identitetsresurs och väljer Egenskaper. Kopiera och spara klient-ID :t och huvudnamns-ID:t för användning i följande steg.

    Skärmbild av Azure Portal område med hanterade identitets-ID:t.

  3. Kör följande .alter-merge-princip managed_identity kommando och ersätt <objectId> med objekt-ID:t för hanterad identitet från föregående steg. Det här kommandot anger en princip för hanterad identitet i klustret som gör att den hanterade identiteten kan användas med uppdateringsprincipen.

    .alter-merge cluster policy managed_identity ```[
        {
          "ObjectId": "<objectId>",
          "AllowedUsages": "AutomatedFlows"
        }
    ]```
    

    Anteckning

    Om du vill ange principen för en specifik databas använder du database <DatabaseName> i stället för cluster.

  4. Kör följande kommando för att bevilja behörigheter för den hanterade identiteten Database Viewer över alla databaser som refereras av uppdateringsprincipens fråga.

    .add database <DatabaseName> viewers ('aadapp=<objectId>;<tenantId>')
    

    Ersätt <DatabaseName> med den relevanta databasen med <objectId>huvud-ID:t för den hanterade identiteten från steg 2 och <tenantId> med Microsoft Entra ID-klientorganisations-ID från steg 2.

Skapa en uppdateringsprincip

Välj någon av följande flikar för att skapa en uppdateringsprincip som ska köras för en användartilldelad eller systemtilldelad hanterad identitet.

Kör kommandot .alter table policy update med ManagedIdentity egenskapen inställd på objekt-ID:t för hanterad identitet.

Följande kommando ändrar till exempel uppdateringsprincipen för tabellen MyTable i MyDatabase databasen som refererar till tabellen OtherTable i databasen OtherDatabase för en användartilldelad hanterad identitet. <objectId> ska vara ett objekt-ID för hanterad identitet.

.alter table MyDatabase.MyTable policy update
```
[
    {
        "IsEnabled": true,
        "Source": "MyTable",
        "Query": "UpdatePolicyFunction",
        "IsTransactional": false,
        "PropagateIngestionProperties": false,
        "ManagedIdentity": "<objectId>"
    }
]
```