Перечислите все группы пользователей в Azure Active Directory с помощью вызова API Azure. - PullRequest
0 голосов
/ 21 декабря 2018

Что такое API отдыха для перечисления всех групп в Azure Activedirectory из загрузочного приложения Spring?

(на данный момент при поиске в Google отображаются два нижеприведенных API-интерфейса, как показано ниже, один из них - «Azure Active Directory»API-интерфейс «График», а другой - это «Группа API REST API управления Azure»

Не знаете, какой именно API использовать для получения списка групп Azure AD?

1 Ответ

0 голосов
/ 21 декабря 2018

Лучший подход - вызвать Microsoft Graph API (хотя вы также можете сделать это с помощью Azure AD Graph API).

К перечислить все группы запрос будет выглядеть следующим образом:

GET https://graph.microsoft.com/v1.0/groups

В Java вы можете использовать Microsoft Graph SDK для Java , пример того, как вы можете извлечь все группы (включая подкачку по нескольким страницам).результатов, если у вас более 999 групп):

// Set up the Graph client
IGraphServiceClient graphClient = 
            GraphServiceClient
            .builder()
            .authenticationProvider(authProvider)
            .logger(new NotALogger())
            .buildClient();

// Set up the initial request builder and build request for the first page
IGroupCollectionRequestBuilder groupsRequestBuilder = graphClient.groups();
IGroupCollectionRequest groupsRequest = groupsRequestBuilder
    .buildRequest()
    .top(999);

do {
    try {
        // Execute the request
        IGroupCollectionPage groupsCollection = groupsRequest.get(); 

        // Process each of the items in the response
        for (Group group : groupsCollection.getCurrentPage()) {
            System.out.println(group.displayName);
        }

        // Build the request for the next page, if there is one
        groupsRequestBuilder = groupsCollection.getNextPage();
        if (groupsRequestBuilder == null) {
            groupsRequest = null;
        } else {
            groupsRequest = groupsRequestBuilder.buildRequest();
        }

    } catch(ClientException ex) {

        // Handle failure
        ex.printStackTrace();
        groupsRequest = null;
    }
} while (groupsRequest != null);

К перечислите все группы, в которых зарегистрированный пользователь является членом (включая вложенные группы):

POST https://graph.microsoft.com/v1.0/me/getMemberGroups
Content-type: application/json

{
  "securityEnabledOnly": true
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...