Я использую Azure SDK для получения списка групп ресурсов:
const MsRest = require('ms-rest-azure');
const { ResourceManagementClient } = require('azure-arm-resource');
const credentials = await MsRest.loginWithServicePrincipalSecret(appId, pass, tenantId);
const client= new ResourceManagementClient(credentials, subscriptionId);
const resourceGroups = await client.resourceGroups.list()
Однако проблема в том, что я получаю все группы ресурсов в подписке. Я хочу получать только те группы ресурсов, к которым имеет доступ авторизованный пользователь. Таким образом, один из вариантов - получить список IAM (контроль доступа) группы ресурсов и проверить, появляется ли там зарегистрированный пользователь. Я не хочу делать это таким образом, потому что это потребует много запросов к Azure. Я хочу выдать себя за зарегистрированного пользователя при доступе к Azure, чтобы получить только те группы ресурсов, которые ему разрешено просматривать.
Я использую passport-azure-ad для аутентификации.