Przejdź do głównej zawartości

Outlook / Microsoft 365 (OAuth)

Integracja z Outlookiem wysyła szablony Frontmail z twojej skrzynki Outlook.com, Hotmail lub Microsoft 365 (Exchange Online) przez Microsoft Graph. Wiadomości trafiają do Elementów wysłanych, a odpowiedzi wracają do twojej skrzynki odbiorczej.

Wybierz Outlook / Microsoft 365, gdy twoja firma już korzysta z Microsoft 365 i chcesz, żeby formularze ze strony i powiadomienia przychodziły z prawdziwej firmowej skrzynki (biuro@example.com) bez konfigurowania kolejnego dostawcy. Podobnie jak Gmail nadaje się do małych wolumenów – Exchange Online ogranicza wysyłkę na skrzynkę i nie ma webhooków doręczeń. Do transakcyjnych wolumenów użyj Mailgun, Postmark, Amazon SES lub Resend. Zobacz przegląd usług.

Microsoft 365 oferuje też wysyłkę przez SMTP (smtp.office365.com:587), a usługa SMTP we Frontmail ma dla niej gotowe ustawienia. Jednak SMTP AUTH jest domyślnie wyłączone w wielu tenantach, a Microsoft wycofuje uwierzytelnianie Basic (nazwa użytkownika + hasło) dla SMTP AUTH w Exchange Online. Dlatego ta integracja używa zamiast tego OAuth i API Graph sendMail – bez hasła, bez wyjątku dla SMTP AUTH, i działa z MFA oraz dostępem warunkowym (Conditional Access).

  • Konto Outlook.com / Hotmail albo konto służbowe Microsoft 365 ze skrzynką Exchange Online (licencja obejmująca Exchange).
  • W Microsoft 365: uprawnienie do wyrażania zgody na aplikacje. Wiele organizacji pozwala użytkownikom samodzielnie zgadzać się na uprawnienia niskiego ryzyka; inne wymagają zgody administratora – zobacz niżej.
  • Nic więcej – bez własnej rejestracji aplikacji w Azure.
  1. Otwórz Usługi e-mail → Dodaj usługę → Outlook / Microsoft 365.
  2. Kliknij Połącz z Outlook / Microsoft 365 i zaloguj się na skrzynkę, z której chcesz wysyłać.
  3. Przejrzyj ekran zgody. Frontmail prosi o te uprawnienia delegowane:
    • Mail.Send – wysyłanie poczty jako ty. Nie pozwala czytać, przenosić ani usuwać żadnych e-maili.
    • offline_access – zachowanie uprawnienia bez twojego zalogowania (dzięki temu Frontmail dostaje refresh token).
    • openid email – twój adres, pokazywany na stronie usługi i używany jako domyślny adres nadawcy.
  4. Kliknij Accept (Akceptuj). Nastąpi przekierowanie z powrotem, a usługa zostanie zapisana z podłączonym adresem.
  5. Opcjonalnie dostosuj Maks. liczba e-maili na sekundę (domyślnie 0,5/s = 30 na minutę) i kliknij Testuj połączenie, które odświeży token.

Co jest przechowywane: refresh token OAuth (oraz krótkotrwały token dostępu), zaszyfrowany kopertowo przez AWS KMS. Tokeny dostępu są ważne około godziny; Microsoft przy każdym odświeżeniu rotuje refresh token, a Frontmail automatycznie zapisuje nowy.

Jeśli twój tenant nie pozwala użytkownikom wyrażać zgody, logowanie zatrzyma się na „Need admin approval” (albo błędzie AADSTS65001 / AADSTS90094). Global Administrator, Cloud Application Administrator lub Application Administrator może wtedy:

  • zatwierdzić oczekujące żądanie w Microsoft Entra admin center → Enterprise applications → Admin consent requests albo
  • sam zalogować się przez Połącz z Outlook / Microsoft 365 i zaznaczyć Consent on behalf of your organization.

Administratorzy mogą później ograniczyć aplikację do wybranych użytkowników w Enterprise applications → Frontmail → Properties → Assignment required.

Refresh token traci ważność, gdy:

  • użytkownik zmieni lub zresetuje hasło albo administrator unieważni sesje (AADSTS50173),
  • nie jest używany przez 90 dni (AADSTS700082),
  • użytkownik lub administrator usunie Frontmail z My Apps / Enterprise applications,
  • polityka dostępu warunkowego zacznie blokować aplikację albo konto zostanie wyłączone.

Frontmail otrzymuje wtedy invalid_grant i traktuje to jako błąd auth: usługa zostaje oznaczona jako unhealthy, dostajesz e-mail i baner w panelu, a wiadomości są wstrzymywane (albo wysyłane przez usługę zapasową), dopóki nie klikniesz Połącz ponownie na stronie usługi. Potem wstrzymane wiadomości są wysyłane automatycznie.

  • Adresy Outlook.com / Hotmail: nic nie musisz robić.
  • Microsoft 365 we własnej domenie – zwykle konfigurowane przy zakładaniu tenanta; sprawdź, czy istnieją te rekordy:
; SPF
example.com. TXT "v=spf1 include:spf.protection.outlook.com -all"
; DKIM – two CNAMEs, then enable DKIM signing in the Microsoft Defender portal
selector1._domainkey.example.com. CNAME selector1-example-com._domainkey.contoso.onmicrosoft.com.
selector2._domainkey.example.com. CNAME selector2-example-com._domainkey.contoso.onmicrosoft.com.
; DMARC
_dmarc.example.com. TXT "v=DMARC1; p=none; rua=mailto:dmarc@example.com"
  • Dokładne cele DKIM skopiuj z Microsoft Defender → Email & collaboration → Policies → Email authentication settings → DKIM; nowsze tenanty mogą pokazywać inny format celu.
  • Zacznij DMARC od p=none, później zaostrz.

Adres nadawcy: Graph wysyła jako zalogowana skrzynka. Wysyłanie jako skrzynka współdzielona lub inny użytkownik wymaga uprawnień Send As i obecnie nie jest obsługiwane – takie próby kończą się błędem ErrorSendAsDenied.

Nie ma regionu do wyboru – Frontmail używa globalnego endpointu Microsoft Graph (graph.microsoft.com) i endpointu logowania common, który działa zarówno dla kont prywatnych, jak i służbowych. Chmury krajowe (np. Microsoft 365 obsługiwany przez 21Vianet, US Government) nie są obsługiwane.

Konto Przybliżony limit
Microsoft 365 / Exchange Online 10 000 odbiorców dziennie, 30 wiadomości na minutę, 500 odbiorców na wiadomość
Outlook.com / Hotmail ~300 wiadomości dziennie, 100 odbiorców na wiadomość (mniej dla nowych kont)
Graph sendMail (MIME) do 4 MB na wiadomość łącznie z załącznikami

Domyślne 0,5 wiadomości na sekundę we Frontmail odpowiada limitowi Exchange wynoszącemu 30 wiadomości na minutę. Przekroczenie limitów zwraca błędy dławienia, które Frontmail ponawia z opóźnieniem.

Microsoft Graph nie oferuje webhooków doręczeń dla wysłanej poczty, więc nie trzeba niczego konfigurować, a strona usługi nie ma URL webhooka. Frontmail wie tylko, czy Graph przyjął wiadomość (sent), czy ją odrzucił (failed). Raporty o niedostarczeniu (NDR) przychodzą do twojej skrzynki jako zwykłe e-maile i nie są dodawane do listy wykluczeń Frontmail. Otwarcia i kliknięcia nie są śledzone.

  • auth – usługa nie działa (token unieważniony lub wygasły, brak zgody, brak skrzynki, odmowa Send As, 401/403). Usługa zostaje oznaczona jako unhealthy; właściciel dostaje e-mail i baner w panelu. Przejmuje usługa zapasowa szablonu; w przeciwnym razie kredyt wraca, a wiadomość czeka w kolejce wstrzymanych wiadomości jako held_service_error i jest wysyłana automatycznie po ponownym połączeniu (sprawdzanym przy zapisie i w codziennym health checku).
  • permanent – tej wiadomości nie da się wysłać (nieprawidłowi odbiorcy, zbyt duża wiadomość, nieprawidłowe żądanie). Usługa zapasowa, jeśli jest skonfigurowana, w przeciwnym razie failed i zwrot kredytu.
  • transient – dławienie, 5xx, timeouty. Ponawiane z wykładniczym opóźnieniem; po ostatniej próbie failed i zwrot kredytu.
Odpowiedź Microsoft Klasa Co zrobić
invalid_grant – AADSTS50173 / AADSTS700082 (zgoda wygasła lub została cofnięta) auth Kliknij Połącz ponownie na stronie usługi.
AADSTS65001 / „Need admin approval” auth Poproś administratora tenanta o udzielenie zgody (zobacz wyżej), potem połącz ponownie.
401 InvalidAuthenticationToken auth Zwykle naprawia to automatyczne odświeżenie; jeśli błąd się utrzymuje, połącz ponownie.
403 ErrorAccessDenied / Authorization_RequestDenied auth Zgoda została cofnięta albo dostęp warunkowy blokuje aplikację – sprawdź to z administratorem.
MailboxNotEnabledForRESTAPI auth Konto nie ma skrzynki Exchange Online (brak licencji albo skrzynka lokalna).
ErrorSendAsDenied auth Użyj adresu podłączonej skrzynki jako adresu nadawcy.
ErrorQuotaExceeded auth Skrzynka jest pełna – zwolnij miejsce, żeby Elementy wysłane mogły zapisać wiadomość.
400 ErrorInvalidRecipients permanent Zobacz nieprawidłowy odbiorca.
413 / ErrorMessageSizeExceeded permanent Wiadomość z załącznikami musi mieć mniej niż 4 MB.
429 ApplicationThrottled / ErrorExceededMessageLimit / MailboxConcurrency transient Osiągnięto limity skrzynki – Frontmail zwalnia tempo; zmniejsz wolumen albo użyj dostawcy transakcyjnego.
500 / 503 ServiceUnavailable transient Awaria Microsoft – Frontmail ponawia próby.
  • Skrzynka z Exchange Online (lub Outlook.com) podłączona przez Połącz z Outlook / Microsoft 365
  • Udzielona zgoda – przez użytkownika albo, jeśli trzeba, przez administratora tenanta
  • Microsoft 365 we własnej domenie: SPF include:spf.protection.outlook.com, włączony DKIM selector1/selector2, DMARC
  • Nadawca w szablonie = adres podłączonej skrzynki
  • Testuj połączenie przechodzi
  • Wolumen w granicach 30 wiadomości na minutę i dziennego limitu odbiorców
  • Usługa zapasowa skonfigurowana w ważnych szablonach