Получение администраторов Active Directory с помощью клиента Azure AD Graph
используя клиент Azure Active Directory Graph, я могу успешно запросить AD для его ролей пользователей с помощью ff. код:
var activeDirectoryClient = new ActiveDirectoryClient(); // Instantiate the Graph Client here.
var adRoles = await activeDirectoryClient.DirectoryRoles.ExecuteAsync();
возможно ли, однако, получить:
- список ролей, ролей администратора? и
- список пользователей, которые попадают под роли администратора?
в этом случае моим определением администратора будут пользователи под Администратору роль, или те, кто сможет авторизовать приложение (через URL-адрес запроса auth с форматом https://login.microsoftonline.com/common/oauth2/authorize?response_type=code&client_id=xxx-xxx&resource=yyy-yyy&redirect_uri=zzz-zzz&prompt=admin_consent)
1 ответов
есть несколько способов сделать это, и давайте рассмотрим REST API в качестве отправной точки.
вы можете получить список групп и ролей в пользователей использование запроса GET для: https://graph.windows.net/myorganization/users/{user_id}/$links/memberOf?api-version
при успешном выполнении возвращает коллекцию ссылок на группы и DirectoryRole, что этот пользователь является членом
ref:получить группу пользователя и ролям каталог
чтобы получить членство в группе, вы должны сделать запрос GET: https://graph.windows.net/myorganization/groups/{object_id}/$links/members?api-version
ref:получить прямых членов группы
однако в документы:
никакие функции или действия не могут быть вызваны для ролей каталога
Это должно быть сделано из объекта USER. SDK будет отражать это.
IPagedCollection<IDirectoryObject> pagedCollection = retrievedUserFetcher.MemberOf.ExecuteAsync();
консольное приложение GraphAPI имеет несколько замечательных примеров, которые должны показать вам, как выполнить эти действия: