Integracja nAxiom z usługami Microsoft 365
Podsumowanie:Integracja aplikacji biznesowych tworzonych w nAxiom z usługami Microsoft 365 wymaga korzystania z interfejsu API Microsoft Graph. Podstawową tej integracji jest zarejestrowanie aplikacji w usługach Azure Active Directory (AAD) oraz przyznanie jej odpowiednich uprawnień umożliwiających wysyłanie uprawnień do interfejsu MS Graph API. Te uprawnienia musi przydzielić administrator AAD w organizacji. Taką integrację można wykorzystać na przykład do monitorowania wskazanej skrzynki poczty elektronicznej lub do pobierania i tworzenia wydarzeń z kalendarza w MS Outlook.
W tym temacie
Wprowadzenie
Dokumentacja punktów końcowych interfejsu MS Graph API jest dostępna na stronie https://learn.microsoft.com/en-us/graph/overview?view=graph-rest-1.0.
Firma Microsoft udostępnia specjalne narzędzie, przy użyciu którego można testować zapytania do interfejsu: https://developer.microsoft.com/en-us/graph/graph-explorer.
Aplikacja może wysyłać żądania do interfejsu API na dwa sposoby:
- jako zalogowany użytkownik — wymagane są uprawnienia delegowane,
- jako klient (aplikacja) — wymagane są uprawnienia aplikacji.
W dalszej części opisany jest ten drugi przypadek. Należy pamiętać, że uprawnienia aplikacji (klienta) dotyczą wszystkich użytkowników w danej dzierżawie. Administrator AAD może ograniczyć zakres tych uprawnień do określonych kont/użytkowników w sposób opisany na stronie: https://learn.microsoft.com/en-us/graph/auth-limit-mailbox-access.
Rejestracja aplikacji w usłudze Azure Active Directory
- Zaloguj się do portalu Azure (portal.azure.com).
- Na ekranie głównym wybierz
Zarządzanie usługą Active Directory(środkowy kafelek).
Portal Azure, Zarządzanie AD - W menu z lewej strony kliknij pozycję
Rejestracje aplikacji.
Portal Azure, Rejestracje aplikacji - Na wyświetlonej stronie kliknij link
Nowa rejestracjau góry po lewej.
Portal Azure, Nowa rejestracja - Wpisz nazwę aplikacji i kliknij przycisk
Rejestruju dołu.
Rejestrowanie aplikacji - Kliknij link
Dodaj certyfikat lub wpis tajny.
Dodaj certyfikat lub wpis tajny - Kliknij link
Nowy klucz tajny klienta, a następnie wpisz opis i wybierz okres ważności.
należy pamiętać o konieczności aktualizacji klucza tajnego zgodnie z ustawionym okresem ważności.
- Po kliknięciu przycisku
Dodajzostanie wyświetlona wartość wpisu tajnego klienta, którą należy skopiować i zapisać w bezpiecznym miejscu, ponieważ po wylogowaniu nie będzie ona więcej wyświetlana
Wartość klucza tajnego
Przypisywanie uprawnień
Po zarejestrowaniu aplikacji należy przypisać jej odpowiednie uprawnienia w interfejsie MS Graph API. Wybór opcji zależy od zasobów, z których ma korzystać aplikacja.
- Wyświetl stronę zarejestrowanej aplikacji i kliknij polecenie
Uprawnienia interfejsu APIw menu z lewej strony.
Uprawnienia interfejsu API - Zarejestrowana aplikacja ma domyślnie przypisane delegowane uprawnienie User.Read. Kliknij
Dodaj uprawnienie.
Dodaj uprawnienie - Dostęp do skrzynek pocztowych przez MS Graph API:
Na stronieŻądanie uprawnień interfejsu APIstronie kliknij kafelekMS Graph, a na następnej kafelekUprawnienia aplikacji. Przewiń do sekcjiMail, zaznacz uprawnienia Mail.Read, Mail.ReadBasic i Mail.ReadBasic.All i kliknij przyciskDodaj uprawnienie.
Uprawnienie - Dostęp do skrzynek pocztowych przez Exchange Web Services:
a. Na stronieŻądanie uprawnień interfejsu APIkliknij kategorięInterfejsy API używane przez moją organizacjęi znajdź pozycjęOffice 365 Exchange Online.
Interfejsy API organizacji b. Kliknij tę pozycję, a następnie kliknij kafelek
Uprawnienia aplikacjii zaznacz uprawnienie full_access_as_app.
Uprawnienie full_access_as_app -
Dostęp do kalendarzy przez interfejs MS Graph:
Na stronieŻądanie uprawnień interfejsu APIstronie kliknij kafelekMS Graph, a na następnej kafelekUprawnienia aplikacji. Przewiń do sekcjiCalendars, zaznacz uprawnienia Calendars.Read, Calendars.ReadWrite, a następnie w sekcjiUserszaznacz uprawnienie *Users.Read.All i kliknij przyciskDodaj uprawnienie. - Jeśli użytkownik nie ma uprawnień administracyjnych, włączenie dodanych uprawnień wymaga zgody administratora.
Nieaktywne uprawnienia
Źródło danych w nAxiom
W aplikacji AdminSPA wybierz polecenie DANE > Źródła danych i zdefiniuj nowe źródło danych typu REST API na serwerze graph.microsoft.com, podając właściwości jak na ilustracji poniżej.
W polach Client ID i Client Secret należy wpisać odpowiednio identyfikator klienta (aplikacji) i klucz tajny uzyskane podczas rejestrowania aplikacji w usłudze AAD.
Pobieranie zdarzeń z kalendarza
- Utwórz nową akcję Zapytanie do Webserwisów.
- Wybierz źródło danych na serwerze MS GRAPH.
- W polu
Ścieżka żądaniawstaw adres punktu końcowego: https://graph.microsoft.com/v1.0/users/{@UserId}/calendar/events. - W polu
Procedura obsługi odpowiedziwpisz instrukcję SQL, która przetworzy zwrócone dane, na przykład:INSERT INTO [MojaTabela] ( [GraphUser], [StartDatetime], [EndDatetime], [Title], [IsAllDay] ) SELECT {@ IdentyfikatorUżytkownika}, [StartDatetime], [EndDatetime], [Title], 0 FROM OPENJSON ({@_Response},'$.value') WITH ( [StartDatetime] datetime2 '$.start.dateTime', [EndDatetime] datetime2 '$.end.dateTime', [Title] nvarchar(300) '$.subject' )
Następnie można utworzyć formularz z sekcją kalendarza, w której będą wyświetlane pobrane wydarzenia. Aby zdarzenia w kalendarzu były aktualne, akcję pobierającą można skonfigurować jako zadanie cykliczne.
Powiązane tematy: