Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Kommentar
Det går inte att aktivera identiteter för en befintlig app som ursprungligen distribuerades med Hjälp av Azure-cmdletar.
För att få åtkomst till funktionen för hanterad identitet för Azure Service Fabric-program måste du först aktivera tjänsten för hanterad identitetstoken i klustret. Den här tjänsten ansvarar för autentisering av Service Fabric-program med hjälp av deras hanterade identiteter och för att få åtkomsttoken för deras räkning. När tjänsten är aktiverad kan du se den i Service Fabric Explorer under avsnittet System i den vänstra rutan, som körs under namnet fabric:/System/ManagedIdentityTokenService bredvid andra systemtjänster.
Kommentar
Distribution av Service Fabric-program med hanterade identiteter stöds från och med API-version "2019-06-01-preview". Du kan också använda samma API-version för programtyp, programtypsversion och tjänstresurser. Den lägsta Service Fabric-körningen som stöds är 6,5 CU2. Dessutom bör bygg-/paketmiljön också ha Service Fabric .NET SDK vid CU2 eller högre
Systemtilldelad hanterad identitet
Programmall
Om du vill aktivera ett program med en systemtilldelad hanterad identitet lägger du till identitetsegenskapen i programresursen, med typen systemTilldelad enligt exemplet nedan:
    {
      "apiVersion": "2019-06-01-preview",
      "type": "Microsoft.ServiceFabric/clusters/applications",
      "name": "[concat(parameters('clusterName'), '/', parameters('applicationName'))]",
      "location": "[resourceGroup().location]",
      "dependsOn": [
        "[concat('Microsoft.ServiceFabric/clusters/', parameters('clusterName'), '/applicationTypes/', parameters('applicationTypeName'), '/versions/', parameters('applicationTypeVersion'))]"
      ],
      "identity": {
        "type" : "systemAssigned"
      },
      "properties": {
        "typeName": "[parameters('applicationTypeName')]",
        "typeVersion": "[parameters('applicationTypeVersion')]",
        "parameters": {
        }
      }
    }
Den här egenskapen deklarerar (till Azure Resource Manager och resursprovidrar för hanterad identitet respektive Service Fabric-resursproviders att den här resursen ska ha en implicit (system assigned) hanterad identitet.
Program- och tjänstpaket
Uppdatera programmanifestet för att lägga till ett ManagedIdentity-element i avsnittet Principals som innehåller en enda post enligt nedan:
ApplicationManifest.xml
<Principals> <ManagedIdentities> <ManagedIdentity Name="SystemAssigned" /> </ManagedIdentities> </Principals>Detta mappar den identitet som tilldelats programmet som en resurs till ett eget namn, för ytterligare tilldelning till de tjänster som ingår i programmet.
I avsnittet ServiceManifestImport som motsvarar tjänsten som tilldelas den hanterade identiteten lägger du till ett IdentityBindingPolicy-element enligt nedan:
ApplicationManifest.xml
<ServiceManifestImport> <Policies> <IdentityBindingPolicy ServiceIdentityRef="WebAdmin" ApplicationIdentityRef="SystemAssigned" /> </Policies> </ServiceManifestImport>Det här elementet tilldelar programmets identitet till tjänsten. utan den här tilldelningen kommer tjänsten inte att kunna komma åt programmets identitet. I kodfragmentet ovan mappas identiteten
SystemAssigned(som är ett reserverat nyckelord) till tjänstens definition under det egna namnetWebAdmin.Uppdatera tjänstmanifestet för att lägga till ett ManagedIdentity-element i avsnittet Resurser med namnet som matchar värdet
ServiceIdentityRefför inställningen frånIdentityBindingPolicydefinitionen i programmanifestet:ServiceManifest.xml
<Resources> ... <ManagedIdentities DefaultIdentity="WebAdmin"> <ManagedIdentity Name="WebAdmin" /> </ManagedIdentities> </Resources>Det här är motsvarande mappning av en identitet till en tjänst enligt beskrivningen ovan, men ur tjänstdefinitionens perspektiv. Identiteten refereras här med sitt eget namn (
WebAdmin), enligt beskrivningen i programmanifestet.
Nästa steg
- Granska stöd för hanterad identitet i Azure Service Fabric
 - Distribuera ett nytt Azure Service Fabric-kluster med stöd för hanterad identitet
 - Aktivera hanterad identitet i ett befintligt Azure Service Fabric-kluster
 - Utnyttja ett Service Fabric-programs hanterade identitet från källkoden
 - Distribuera ett Azure Service Fabric-program med en användartilldelad hanterad identitet
 - Bevilja ett Azure Service Fabric-program åtkomst till andra Azure-resurser