Felügyelt identitással rendelkező alkalmazás üzembe helyezése felügyelt Service Fabric-fürtön
Felügyelt identitással rendelkező Service Fabric-alkalmazás üzembe helyezéséhez az alkalmazást az Azure Resource Manageren keresztül kell üzembe helyezni, általában egy Azure Resource Manager-sablonnal. A Service Fabric-alkalmazás Azure Resource Manageren keresztüli üzembe helyezésével kapcsolatos további információkért lásd : Alkalmazás üzembe helyezése felügyelt fürtön az Azure Resource Manager használatával.
Feljegyzés
Az Azure-erőforrásként nem üzembe helyezett alkalmazások nem rendelkeznek felügyelt identitásokkal.
A Service Fabric-alkalmazások felügyelt identitással való üzembe helyezése a felügyelt fürtök API-verziójával "2021-05-01"
támogatott.
Felügyelt fürtsablonok mintája itt érhető el: Service Fabric által felügyelt fürtsablonok
Felügyelt identitás támogatása a Service Fabric által felügyelt fürtön
Ha egy Service Fabric-alkalmazás felügyelt identitásokkal van konfigurálva az Azure-erőforrásokhoz , és a fürtön van üzembe helyezve, a felügyelt Service Fabric-fürtön aktiválja a Managed Identity Token Service automatikus konfigurációját. Ez a szolgáltatás felelős a Service Fabric-alkalmazások felügyelt identitások használatával történő hitelesítéséért, valamint a hozzáférési jogkivonatok nevében történő beszerzéséért. Ha a szolgáltatás engedélyezve van, a bal oldali panel Rendszer szakaszában, a Service Fabric Explorerben láthatja, amely a háló neve alatt fut:/System/ManagedIdentityTokenService.
Feljegyzés
Az alkalmazás felügyelt identitásokkal való első üzembe helyezésekor az automatikus fürtkonfiguráció módosítása miatt egy egyszeri hosszabb üzembe helyezésre kell számítania. Ez a zónaszintű fürtök esetében 15 perctől 45 percig tart egy zónán átnyúló fürt esetében. Ha más üzemelő példányok is vannak a repülés során, a felügyelt identitás konfigurációjának meg kell várnia, amíg azok befejeződnek.
Az alkalmazáserőforrás támogatja mind a SystemAssigned, mind a UserAssigned hozzárendelését, és a hozzárendelés elvégezhető az alábbi kódrészletben látható módon.
{
"type": "Microsoft.ServiceFabric/managedclusters/applications",
"apiVersion": "2021-05-01",
"identity": {
"type": "SystemAssigned",
"userAssignedIdentities": {}
},
}
Felhasználó által hozzárendelt identitás
A felhasználó által hozzárendelt identitással rendelkező alkalmazás engedélyezéséhez először adja hozzá az identitástulajdonságot az alkalmazáserőforráshoz userAssigned típussal és a hivatkozott felhasználó által hozzárendelt identitásokkal. Ezután vegyen fel egy managedIdentities szakaszt az alkalmazáserőforrás tulajdonságok szakaszába, amely a felhasználó által hozzárendelt identitások egyszerű neveit tartalmazza a principalId-leképezéshez. További információ a felhasználó által hozzárendelt identitásokról: Felhasználó által hozzárendelt felügyelt identitás létrehozása, listázása vagy törlése.
Alkalmazássablon
A felhasználó által hozzárendelt identitással rendelkező alkalmazás engedélyezéséhez először adja hozzá az identitástulajdonságot az alkalmazáserőforráshoz userAssigned típussal és a hivatkozott felhasználó által hozzárendelt identitásokkal, majd adjon hozzá egy managedIdentities objektumot a tulajdonságok szakaszon belül, amely tartalmazza a felhasználóbarát név listáját a felhasználó által hozzárendelt identitások principalId-leképezéséhez.
{
"apiVersion": "2021-05-01",
"type": "Microsoft.ServiceFabric/managedclusters/applications",
"name": "[concat(parameters('clusterName'), '/', parameters('applicationName'))]",
"location": "[resourceGroup().location]",
"dependsOn": [
"[parameters('applicationVersion')]",
"[resourceId('Microsoft.ManagedIdentity/userAssignedIdentities/', parameters('userAssignedIdentityName'))]"
],
"identity": {
"type" : "userAssigned",
"userAssignedIdentities": {
"[resourceId('Microsoft.ManagedIdentity/userAssignedIdentities/', parameters('userAssignedIdentityName'))]": {}
}
},
"properties": {
"version": "[parameters('applicationVersion')]",
"parameters": {
},
"managedIdentities": [
{
"name" : "[parameters('userAssignedIdentityName')]",
"principalId" : "[reference(resourceId('Microsoft.ManagedIdentity/userAssignedIdentities/', parameters('userAssignedIdentityName')), '2018-11-30').principalId]"
}
]
}
}
A fenti példában a felhasználó által hozzárendelt identitás erőforrásneve lesz használva az alkalmazás felügyelt identitásának rövid neveként. Az alábbi példák feltételezik, hogy a tényleges rövid név "Rendszergazda User".
Alkalmazáscsomag
Az Azure Resource Manager-sablon szakaszában
managedIdentities
definiált összes identitáshoz adjon hozzá egy címkét<ManagedIdentity>
az alkalmazásjegyzékben az Egyszerűk szakaszban. AzName
attribútumnak meg kell egyeznie aname
szakaszban meghatározott tulajdonságmalmanagedIdentities
.ApplicationManifest.xml
<Principals> <ManagedIdentities> <ManagedIdentity Name="AdminUser" /> </ManagedIdentities> </Principals>
A ServiceManifestImport szakaszban adjon hozzá egy IdentityBindingPolicy-t a felügyelt identitást használó szolgáltatáshoz. Ez a szabályzat az
AdminUser
identitást egy szolgáltatásspecifikus identitásnévre képezi le, amelyet később hozzá kell adni a szolgáltatásjegyzékhez.ApplicationManifest.xml
<ServiceManifestImport> <Policies> <IdentityBindingPolicy ServiceIdentityRef="WebAdmin" ApplicationIdentityRef="AdminUser" /> </Policies> </ServiceManifestImport>
Frissítse a szolgáltatásjegyzéket úgy, hogy hozzáadjon egy ManagedIdentitást az Erőforrások szakaszban az alkalmazásjegyzékben szereplő
IdentityBindingPolicy
névvel:ServiceIdentityRef
ServiceManifest.xml
<Resources> ... <ManagedIdentities DefaultIdentity="WebAdmin"> <ManagedIdentity Name="WebAdmin" /> </ManagedIdentities> </Resources>
Rendszer által hozzárendelt felügyelt identitás
Alkalmazássablon
Ha rendszer által hozzárendelt felügyelt identitással szeretné engedélyezni az alkalmazást, adja hozzá az identitástulajdonságot az alkalmazáserőforráshoz a systemAssigned típussal az alábbi példában látható módon:
{
"apiVersion": "2021-05-01",
"type": "Microsoft.ServiceFabric/managedclusters/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": {
}
}
}
Ez a tulajdonság deklarálja (az Azure Resource Manager, illetve a felügyelt identitás- és Service Fabric-erőforrás-szolgáltatók számára), hogy ennek az erőforrásnak implicit (system assigned
) felügyelt identitással kell rendelkeznie.
Alkalmazás- és szolgáltatáscsomag
Frissítse az alkalmazásjegyzéket úgy, hogy hozzáadjon egy ManagedIdentity elemet a Principals szakaszhoz, amely egyetlen bejegyzést tartalmaz az alábbiak szerint:
ApplicationManifest.xml
<Principals> <ManagedIdentities> <ManagedIdentity Name="SystemAssigned" /> </ManagedIdentities> </Principals>
Ez leképezi az alkalmazáshoz hozzárendelt identitást egy felhasználóbarát névre, és további hozzárendelést biztosít az alkalmazást alkotó szolgáltatásokhoz.
A felügyelt identitáshoz rendelt szolgáltatásnak megfelelő ServiceManifestImport szakaszban adjon hozzá egy IdentityBindingPolicy elemet az alábbiak szerint:
ApplicationManifest.xml
<ServiceManifestImport> <Policies> <IdentityBindingPolicy ServiceIdentityRef="WebAdmin" ApplicationIdentityRef="SystemAssigned" /> </Policies> </ServiceManifestImport>
Ez az elem hozzárendeli az alkalmazás identitását a szolgáltatáshoz; a hozzárendelés nélkül a szolgáltatás nem fog tudni hozzáférni az alkalmazás identitásához. A fenti kódrészletben az
SystemAssigned
identitás (amely egy fenntartott kulcsszó) a szolgáltatás definíciójára van leképezve a rövid névWebAdmin
alatt.Frissítse a szolgáltatásjegyzéket úgy, hogy hozzáadjon egy ManagedIdentity elemet az Erőforrások szakaszban az alkalmazásjegyzékben szereplő definícióban
IdentityBindingPolicy
szereplő beállítás értékénekServiceIdentityRef
megfelelő névvel:ServiceManifest.xml
<Resources> ... <ManagedIdentities DefaultIdentity="WebAdmin"> <ManagedIdentity Name="WebAdmin" /> </ManagedIdentities> </Resources>
Ez az identitásnak a fent leírt, de a szolgáltatásdefiníció szempontjából megfelelő leképezése egy szolgáltatáshoz. Az identitásra az alkalmazásjegyzékben deklarált rövid neve (
WebAdmin
) hivatkozik.
Következő lépések
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: