Авторизация невладельцев для развертывания Avere vFXT

Эти инструкции являются обходным решением, которое позволяет пользователю без прав владельца подписки создавать Avere vFXT для системы Azure.

(Рекомендуемый способ развертывания системы Avere vFXT — иметь пользователя с правами владельца выполнить действия по созданию, как описано в разделе "Подготовка к созданию Avere vFXT".)

Решение включает создание дополнительной роли доступа, которая дает пользователям достаточные разрешения на установку кластера. Роль должна быть создана владельцем подписки, а владелец должен назначить ему соответствующих пользователей.

Владелец подписки также должен принять условия использования для образа Avere vFXT Marketplace.

Это важно

Все эти действия должны выполняться пользователем с привилегиями владельца в подписке, которая будет использоваться для кластера.

  1. Скопируйте эти строки и сохраните их в файле (например, averecreatecluster.json). Используйте идентификатор подписки в инструкции AssignableScopes .

    {
        "AssignableScopes": ["/subscriptions/<SUBSCRIPTION_ID>"],
        "Name": "avere-create-cluster",
        "IsCustom": "true"
        "Description": "Can create Avere vFXT clusters",
        "NotActions": [],
        "Actions": [
            "Microsoft.Authorization/*/read",
            "Microsoft.Authorization/roleAssignments/*",
            "Microsoft.Authorization/roleDefinitions/*",
            "Microsoft.Compute/*/read",
            "Microsoft.Compute/availabilitySets/*",
            "Microsoft.Compute/virtualMachines/*",
            "Microsoft.Network/*/read",
            "Microsoft.Network/networkInterfaces/*",
            "Microsoft.Network/routeTables/write",
            "Microsoft.Network/routeTables/delete",
            "Microsoft.Network/routeTables/routes/delete",
            "Microsoft.Network/virtualNetworks/subnets/join/action",
            "Microsoft.Network/virtualNetworks/subnets/read",
    
            "Microsoft.Resources/subscriptions/resourceGroups/read",
            "Microsoft.Resources/subscriptions/resourceGroups/resources/read",
            "Microsoft.Storage/*/read",
            "Microsoft.Storage/storageAccounts/listKeys/action"
        ],
    }
    
  2. Выполните следующую команду, чтобы создать роль:

    az role definition create --role-definition <PATH_TO_FILE>

    Пример:

    az role definition create --role-definition ./averecreatecluster.json
    
  3. Назначьте эту роль пользователю, который создаст кластер:

    az role assignment create --assignee <USERNAME> --scope /subscriptions/<SUBSCRIPTION_ID> --role 'avere-create-cluster'

После завершения этого процесса роль предоставляет любому пользователю, назначаемому ему следующие разрешения для подписки:

  • Создание и настройка сетевой инфраструктуры
  • Создание контроллера кластера
  • Запуск скриптов создания кластера с контроллера кластера для создания кластера