Как настроить аргументы идентификации управляемой службы экземпляра контейнера Azure с помощью .Net Fluent SDK - PullRequest
1 голос
/ 23 апреля 2019

Создавая экземпляр контейнера Azure с помощью azure-cli, я могу указать идентификатор ресурса управляемого удостоверения в качестве параметра --assigned-identity

Managed Service Identity Arguments
    --assign-identity                : Space-separated list of assigned identities. Assigned
                                       identities are either user assigned identities (resource IDs)
                                       and / or the system assigned identity ('[system]'). See
                                       examples for more info.

Я пытаюсь сделать то же самое с .Net Fluent Management SDK, но я не вижу способа сделать это.

Спасибо!

1 Ответ

1 голос
/ 23 апреля 2019

Думаю, вы правы. Я также попытался просмотреть исходный код для библиотек управления Azure для .NET и не смог найти никаких методов или помощников, которые бы помогли в создании с использованием назначенного системой или назначенного пользователем идентификатора.

Подобные функции поддерживаются в случае виртуальных машин. Исходный код

public VirtualMachineImpl WithExistingUserAssignedManagedServiceIdentity(IIdentity identity)
{
    this.virtualMachineMsiHelper.WithExistingExternalManagedServiceIdentity(identity);
    return this;
}

Я бы ожидал увидеть похожие методы в классах, принадлежащих к ContainerInstance подобно ContainerGroupImpl , но я не вижу.

Отказ от ответственности: Как вы можете видеть, я говорю это на основе ручного поиска, а не на основе официальной документации, поэтому возможно, что я что-то упустил.

Возможная альтернатива

Если вы заинтересованы в этом из кода на основе .NET / C # (поскольку вы ищете в .NET SDK), одной из альтернатив может быть использование прямого REST API.

Группы контейнеров - создание или обновление

PUT https://management.azure.com/subscriptions/subid/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/demo1?api-version=2018-10-01

Вы можете указать личность, которая будет использоваться в теле

"identity": {
    "type": "SystemAssigned, UserAssigned",
    "userAssignedIdentities": {
      "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity-name": {}
    }

Полный пример вызова API REST здесь

...