Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Чтобы развернуть приложение Service Fabric с поддержкой управляемой идентификации, его нужно развернуть посредством Azure Resource Manager, обычно с использованием шаблона Azure Resource Manager. Дополнительные сведения о развертывании приложения Service Fabric с помощью Azure Resource Manager см. в статье "Управление приложениями и службами в качестве ресурсов Azure Resource Manager".
Примечание.
Приложения, которые не развернуты в качестве ресурса Azure , не могут иметь управляемые удостоверения.
Развертывание приложения Service Fabric с управляемым удостоверением поддерживается версией API "2019-06-01-preview"
. Вы также можете использовать ту же версию API для типа приложения, версии приложения и ресурсов службы.
удостоверение User-Assigned
Чтобы включить приложение с удостоверением User-Assigned, добавьте сначала свойство удостоверения в ресурс приложения с типом userAssigned и ссылаемыми назначенными пользователем удостоверениями. Затем добавьте раздел managedIdentities в раздел свойств ресурса приложения, который содержит список сопоставлений понятных имен с principalId для каждого из пользовательских назначаемых удостоверений. Дополнительные сведения о назначенных пользователем удостоверениях см. в статье "Создание, перечисление или удаление управляемого удостоверения, назначаемого пользователем".
Шаблон приложения
Чтобы включить приложение с удостоверением, назначаемым пользователем, сначала добавьте свойство identity в ресурс приложения типа userAssigned с указанными назначенными пользователем удостоверениями, а затем добавьте объект managedIdentities в раздел properties, содержащий список отображения понятных имен на идентификаторы principalId для каждого назначенного пользователем удостоверения.
{
"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'))]",
"[resourceId('Microsoft.ManagedIdentity/userAssignedIdentities/', parameters('userAssignedIdentityName'))]"
],
"identity": {
"type" : "userAssigned",
"userAssignedIdentities": {
"[resourceId('Microsoft.ManagedIdentity/userAssignedIdentities/', parameters('userAssignedIdentityName'))]": {}
}
},
"properties": {
"typeName": "[parameters('applicationTypeName')]",
"typeVersion": "[parameters('applicationTypeVersion')]",
"parameters": {
},
"managedIdentities": [
{
"name" : "[parameters('userAssignedIdentityName')]",
"principalId" : "[reference(resourceId('Microsoft.ManagedIdentity/userAssignedIdentities/', parameters('userAssignedIdentityName')), '2018-11-30').principalId]"
}
]
}
}
В указанном выше примере имя ресурса удостоверения, назначенного пользователем, используется в качестве понятного имени управляемого идентификатора для приложения. В следующих примерах предполагается, что текущее дружественное имя — AdminUser.
Пакет приложения
Для каждого удостоверения, определенного в разделе
managedIdentities
шаблона Azure Resource Manager, добавьте тег<ManagedIdentity>
в манифест приложения в разделе Субъекты. АтрибутName
должен соответствовать свойствуname
, определённому в разделеmanagedIdentities
.ApplicationManifest.xml
<Principals> <ManagedIdentities> <ManagedIdentity Name="AdminUser" /> </ManagedIdentities> </Principals>
В разделе ServiceManifestImport добавьте IdentityBindingPolicy для службы, которая использует управляемое удостоверение. Эта политика сопоставляет
AdminUser
удостоверение с именем удостоверения для конкретной службы, которое необходимо добавить в манифест службы позже.ApplicationManifest.xml
<ServiceManifestImport> <Policies> <IdentityBindingPolicy ServiceIdentityRef="WebAdmin" ApplicationIdentityRef="AdminUser" /> </Policies> </ServiceManifestImport>
Обновите манифест службы, чтобы добавить ManagedIdentity в раздел Resources с именем, соответствующим
ServiceIdentityRef
вIdentityBindingPolicy
манифесте приложения:ServiceManifest.xml
<Resources> ... <ManagedIdentities DefaultIdentity="WebAdmin"> <ManagedIdentity Name="WebAdmin" /> </ManagedIdentities> </Resources>