Sdílet prostřednictvím


Nasazení aplikace Service Fabric se spravovanou identitou přiřazenou systémem

Poznámka:

Povolení identity pro existující aplikaci, která byla původně nasazena pomocí rutin Azure, se nepodporuje.

Pokud chcete získat přístup k funkci spravované identity pro aplikace Azure Service Fabric, musíte nejprve povolit službu tokenů spravované identity v clusteru. Tato služba zodpovídá za ověřování aplikací Service Fabric pomocí svých spravovaných identit a za získání přístupových tokenů jejich jménem. Jakmile je služba povolená, můžete ji zobrazit v Service Fabric Exploreru v části Systém v levém podokně, která běží pod názvem fabric:/System/ManagedIdentityTokenService vedle jiných systémových služeb.

Poznámka:

Nasazení aplikací Service Fabric se spravovanými identitami se podporuje počínaje verzí "2019-06-01-preview"rozhraní API. Stejnou verzi rozhraní API můžete použít také pro typ aplikace, verzi aplikace a prostředky služby. Minimální podporovaný modul runtime Service Fabric je 6.5 CU2. Kromě toho by prostředí sestavení a balíčku mělo mít také sadu Service Fabric .NET SDK na CU2 nebo vyšší.

Spravovaná identita přiřazená systémem

Šablona aplikace

Pokud chcete aplikaci povolit se spravovanou identitou přiřazenou systémem, přidejte do prostředku aplikace vlastnost identity s typem systemAssigned, jak je znázorněno v následujícím příkladu:

    {
      "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": {
        }
      }
    }

Tato vlastnost deklaruje (pro Azure Resource Manager a spravované identity a poskytovatele prostředků Service Fabric, v uvedeném pořadí), že tento prostředek má implicitní (system assigned) spravovanou identitu.

Balíček aplikací a služeb

  1. Aktualizujte manifest aplikace tak, aby v části Objekty zabezpečení přidal element ManagedIdentity obsahující jednu položku, jak je znázorněno níže:

    ApplicationManifest.xml

    <Principals>
      <ManagedIdentities>
        <ManagedIdentity Name="SystemAssigned" />
      </ManagedIdentities>
    </Principals>
    

    Tím se identita přiřazená k aplikaci mapuje jako prostředek na popisný název pro další přiřazení ke službám, které tvoří aplikaci.

  2. V části ServiceManifestImport odpovídající službě, která má přiřazenu spravovanou identitu, přidejte element IdentityBindingPolicy, jak je uvedeno níže:

    ApplicationManifest.xml

      <ServiceManifestImport>
        <Policies>
          <IdentityBindingPolicy ServiceIdentityRef="WebAdmin" ApplicationIdentityRef="SystemAssigned" />
        </Policies>
      </ServiceManifestImport>
    

    Tento element přiřadí identitu aplikace službě; bez tohoto přiřazení nebude mít služba přístup k identitě aplikace. Ve výše uvedeném SystemAssigned fragmentu kódu se identita (což je vyhrazené klíčové slovo) mapuje na definici služby pod popisným názvem WebAdmin.

  3. Aktualizujte manifest služby tak, aby do oddílu Resources přidal element ManagedIdentity s názvem odpovídajícím hodnotě ServiceIdentityRef nastavení z IdentityBindingPolicy definice v manifestu aplikace:

    ServiceManifest.xml

      <Resources>
        ...
        <ManagedIdentities DefaultIdentity="WebAdmin">
          <ManagedIdentity Name="WebAdmin" />
        </ManagedIdentities>
      </Resources>
    

    Jedná se o ekvivalentní mapování identity na službu, jak je popsáno výše, ale z pohledu definice služby. Identita je zde odkazována popisným názvem (WebAdmin), jak je deklarováno v manifestu aplikace.

Další kroky