Перечисление виртуальных машин Azure в нескольких подписках в одном каталоге - PullRequest
0 голосов
/ 22 марта 2019

У меня есть несколько подписок и несколько виртуальных машин в каждой подписке.Я использую библиотеку Microsoft.Azure.Management.Fluent для отображения всех виртуальных машин.

Я использовал ниже команду cli для создания файла аутентификации.

az ad sp create-for-rbac --sdk-auth > my.azureauth

используя файл аутентификации, я пытаюсь получить все подписки, как показано ниже

var azure = Azure.Authenticate(file).WithDefaultSubscription();
var subs = azure.Subscriptions.List();

КажетсяФайл аутентификации, созданный с помощью команды, может получить доступ только к одной подписке.

Вот документация для команды

https://docs.microsoft.com/en-us/cli/azure/ad/sp?view=azure-cli-latest#az-ad-sp-create

Как создать файл аутентификации для доступа ко всем подпискам иВМ в каждой подписке?

1 Ответ

1 голос
/ 22 марта 2019

Таким образом, команда создает субъект-службу в Azure AD. Идентификатор клиента для принципала находится в файле. Вы можете использовать его для поиска субъекта службы:

  1. Перейти на portal.azure.com
  2. Открыть Azure Active Directory слева
  3. Открыть Корпоративные приложения
  4. Введите идентификатор клиента в строке поиска для списка приложений предприятия
  5. Теперь вы должны найти участника службы

Для меня принципал обслуживания называется «azure-cli-2019-03-22-20-05-32».

Затем можно перейти на вкладку «Контроль доступа» (IAM) других подписок и добавить в них этот SP как участник. Просто введите имя или идентификатор клиента SP в поиске при выборе цели для роли.

Вы также можете выполнять назначения через CLI:

az role assignment create --assignee "your-sp-client-id" --role "Contributor" --scope "/subscriptions/your-subscription-id-here"
...