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.
SMTP AUTH a Microsoft Graph
Dział zatytułowany „SMTP AUTH a Microsoft Graph”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).
Wymagania
Dział zatytułowany „Wymagania”- 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.
Podłączenie we Frontmail
Dział zatytułowany „Podłączenie we Frontmail”- Otwórz Usługi e-mail → Dodaj usługę → Outlook / Microsoft 365.
- Kliknij Połącz z Outlook / Microsoft 365 i zaloguj się na skrzynkę, z której chcesz wysyłać.
- 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.
- Kliknij Accept (Akceptuj). Nastąpi przekierowanie z powrotem, a usługa zostanie zapisana z podłączonym adresem.
- 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.
Zgoda administratora w Microsoft 365
Dział zatytułowany „Zgoda administratora w Microsoft 365”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.
Gdy token przestaje działać
Dział zatytułowany „Gdy token przestaje działać”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.
DNS: SPF, DKIM i DMARC
Dział zatytułowany „DNS: SPF, DKIM i DMARC”- 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:
; SPFexample.com. TXT "v=spf1 include:spf.protection.outlook.com -all"
; DKIM – two CNAMEs, then enable DKIM signing in the Microsoft Defender portalselector1._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.
Regiony
Dział zatytułowany „Regiony”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.
Limity wysyłki
Dział zatytułowany „Limity wysyłki”| 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.
Śledzenie doręczeń (webhooki)
Dział zatytułowany „Śledzenie doręczeń (webhooki)”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.
Częste błędy
Dział zatytułowany „Częste błędy”- 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 jakoheld_service_errori 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
failedi zwrot kredytu. - transient – dławienie, 5xx, timeouty. Ponawiane z wykładniczym opóźnieniem; po ostatniej próbie
failedi 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. |
Lista kontrolna
Dział zatytułowany „Lista kontrolna”- 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 DKIMselector1/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