Wysyłanie e-maili przez Microsoft 365 (Graph API)
Ten przewodnik przeprowadzi Cię przez proces łączenia ParkFlow ze skrzynką pocztową Microsoft 365, dzięki czemu potwierdzenia rezerwacji, faktury i powiadomienia będą dostarczane za pośrednictwem Twojego własnego dzierżawcy Microsoft 365 przy użyciu Microsoft Graph API.
Dlaczego Graph API, a nie SMTP? Microsoft stopniowo wyłącza uwierzytelnianie podstawowe (Basic Authentication) dla protokołów SMTP, IMAP i POP w Exchange Online. Microsoft Graph API to obsługiwany, długoterminowy sposób wysyłania wiadomości ze skrzynki pocztowej Microsoft 365.
Czego będziesz potrzebować
Przed rozpoczęciem upewnij się, że masz:
- Subskrypcję Microsoft 365 (lub Office 365) obejmującą Exchange Online — na przykład Business Basic, Business Standard, E1, E3, F3 lub dowolny plan zapewniający dostęp do skrzynek pocztowych.
- Dostęp administratora do Microsoft Entra ID (dawniej Azure Active Directory). Tylko administrator może utworzyć rejestrację aplikacji i przyznać uprawnienie wymagane do wysyłania wiadomości.
- Skrzynkę pocztową do wysyłania — zazwyczaj udostępniona skrzynka pocztowa, taka jak
noreply@yourcompany.com, lub zwykła skrzynka użytkownika. Skrzynka pocztowa nie potrzebuje hasła — Microsoft Graph używa poświadczeń aplikacji, a nie danych logowania użytkownika. - Windows PowerShell z modułem ExchangeOnlineManagement — używany jednorazowo podczas konfiguracji w celu ograniczenia skrzynek pocztowych, z których aplikacja może wysyłać wiadomości. (Instrukcje instalacji znajdują się poniżej.)
- Około 20 minut od początku do końca.
Część 1 — Rejestrowanie aplikacji w Microsoft Entra ID
Rejestracja aplikacji to sposób, w jaki Microsoft 365 rozpozna i autoryzuje ParkFlow do wysyłania wiadomości w Twoim imieniu.
1.1 Tworzenie rejestracji aplikacji
- Przejdź do https://portal.azure.com i zaloguj się jako administrator.
- Otwórz Microsoft Entra ID (użyj paska wyszukiwania u góry, jeśli nie widzisz tej opcji).
- W menu po lewej stronie wybierz Rejestracje aplikacji, a następnie kliknij + Nowa rejestracja.
- Wypełnij formularz:
- Nazwa:
ParkFlow Mail(lub dowolna inna — widoczna tylko dla Ciebie). - Obsługiwane typy kont: Konta tylko w tym katalogu organizacyjnym (pojedynczy dzierżawca).
- Identyfikator URI przekierowania: pozostaw puste — ParkFlow nie potrzebuje go w tym przepływie.
- Nazwa:
- Kliknij Zarejestruj.
Zostaniesz przekierowany do strony przeglądu aplikacji.
1.2 Kopiowanie identyfikatorów
Na stronie przeglądu skopiuj i zapisz te dwie wartości — wkleisz je później do ParkFlow:
- Identyfikator aplikacji (klienta)
- Identyfikator katalogu (dzierżawcy)
1.3 Przyznawanie uprawnienia Mail.Send
- W menu po lewej stronie aplikacji kliknij Uprawnienia interfejsu API.
- Kliknij + Dodaj uprawnienie.
- Wybierz Microsoft Graph.
- Wybierz Uprawnienia aplikacji (nie Delegowane).
- Wyszukaj Mail.Send, zaznacz pole wyboru, a następnie kliknij Dodaj uprawnienia.
- Wróć do strony uprawnień interfejsu API, kliknij Wyraź zgodę administratora dla <nazwa Twojej organizacji> i potwierdź.
Kolumna Stan dla uprawnienia Mail.Send powinna teraz wyświetlać zielony znacznik wyboru.
Opcjonalne porządki: Jeśli lista zawiera domyślne uprawnienie
User.Readdodane automatycznie przez Azure, możesz je usunąć — Mail.Send to jedyne uprawnienie, którego potrzebuje ParkFlow.
1.4 Tworzenie klucza tajnego klienta
- W menu po lewej stronie kliknij Certyfikaty i klucze tajne.
- W sekcji Klucze tajne klienta kliknij + Nowy klucz tajny klienta.
- Podaj opis (np.
ParkFlow Mail) i wybierz czas wygaśnięcia (zazwyczaj 12–24 miesiące). - Kliknij Dodaj.
- Natychmiast skopiuj
Wartośćklucza tajnego. Po opuszczeniu tej strony wartość będzie ukryta na zawsze.
Powinieneś teraz mieć zapisane trzy wartości:
- Identyfikator katalogu (dzierżawcy)
- Identyfikator aplikacji (klienta)
- Wartość klucza tajnego klienta
Zachowaj je w poufności — każdy, kto posiada wszystkie trzy, może wysyłać wiadomości w imieniu Twojego dzierżawcy.
Część 2 — Ograniczanie skrzynek pocztowych, z których może korzystać aplikacja
Uważnie przeczytaj tę sekcję. Uprawnienie
Mail.Senddomyślnie pozwala aplikacji wysyłać wiadomości jako dowolny użytkownik w Twojej organizacji. Powinieneś ograniczyć je wyłącznie do skrzynek pocztowych, z których zamierzasz korzystać w ParkFlow. Microsoft wyraźnie zaleca ten krok — pominięcie go oznacza, że wyciekły klucz tajny klienta może zostać użyty do wysyłania wiadomości z adresu dowolnego użytkownika.
Dostęp ogranicza się za pomocą polecenia cmdlet PowerShell Application Access Policy, co zajmuje około minuty.
2.1 Instalowanie modułu Exchange Online PowerShell (jednorazowo)
Otwórz Windows PowerShell jako Administrator i uruchom:
Install-Module -Name ExchangeOnlineManagement -Scope CurrentUser
Zaakceptuj wszelkie monity dotyczące repozytorium PSGallery.
2.2 Logowanie do Exchange Online
Connect-ExchangeOnline -UserPrincipalName admin@yourcompany.com
Zastąp adres adresem konta administratora Microsoft 365. Otworzy się okno przeglądarki w celu zalogowania.
2.3 Tworzenie zasad dostępu
Zastąp dwie wyróżnione wartości własnymi:
<APPLICATION_CLIENT_ID>— identyfikator aplikacji (klienta) z kroku 1.2.noreply@yourcompany.com— skrzynka pocztowa, z której ParkFlow będzie wysyłać wiadomości.
``powershell
New-ApplicationAccessPolicy -AppId "" -PolicyScopeGroupId "noreply@yourcompany.com"