E-mail Microsoft 365¶
Služba zasílání zpráv může odesílat e-mailová oznámení prostřednictvím Microsoft 365 (M365) pomocí rozhraní Microsoft Graph API.
Použijte tuto integraci, když mají být oznámení, upozornění nebo zprávy z LogMan.io odesílány z poštovní schránky v tenantovi Microsoft 365.
Služba zasílání zpráv podporuje dva režimy Microsoft 365:
- Režim aplikace: služba zasílání zpráv odesílá e-mail jako aplikace.
- Delegovaný režim: služba zasílání zpráv odesílá e-mail jménem přihlášeného uživatele Microsoft 365.
Předpoklady¶
Ujistěte se, že server LogMan.io má odchozí přístup přes HTTPS na TCP port 443 na:
graph.microsoft.comlogin.microsoftonline.com
Je vyžadován přístup k Microsoft Entra ID s oprávněními k vytvoření nebo aktualizaci registrace aplikace a udělení souhlasu.
Režim aplikace¶
Režim aplikace používá oprávnění aplikace Microsoft Graph. Tento režim použijte, když by služba měla automaticky odesílat e-maily bez přihlášení uživatele.
Toto je doporučený režim pro oznámení o službách a automatizaci na pozadí.
Požadovaná konfigurační pole¶
| Pole | Popis |
|---|---|
mode |
Nastaveno na app. |
api_url |
Microsoft Graph send-mail endpoint. Use https://graph.microsoft.com/v1.0/users/{}/sendMail. |
tenant_id |
ID adresáře (tenant) Microsoft Entra. |
client_id |
ID aplikace (klienta) registrace aplikace. |
client_secret |
Hodnota klientského tajemství z registrace aplikace. |
user_email |
Poštovní schránka, ze které služba zasílání zpráv odesílá. |
Ukázka konfigurace¶
Upravte soubor model.yaml pro konfiguraci služby asab-iris:
define:
type: rc/model
services:
asab-iris:
instances:
- node1
asab:
config:
m365_email:
mode: app
api_url: https://graph.microsoft.com/v1.0/users/{}/sendMail
tenant_id: "{{M365_TENANT_ID}}"
client_id: "{{M365_CLIENT_ID}}"
client_secret: "{{M365_CLIENT_SECRET}}"
user_email: "noreply@example.com"
Konfigurace Azure¶
- Otevřete Microsoft Entra admin center.
- Přejděte na Aplikace > Registrace aplikací.
- Klikněte na Nová registrace.
- Zadejte popisný název, například
LogMan.io Notifications Email. - Vyberte Účty pouze v tomto organizačním adresáři.
- Pole Přesměrovací URI nechte prázdné.
- Klikněte na Registrovat.
- Na stránce Přehled zkopírujte:
- ID aplikace (klienta) do
client_id - ID adresáře (nájemce) do
tenant_id - Přejděte na Certifikáty a tajemství.
- Klikněte na Nové klientské tajemství.
- Zkopírujte hodnotu tajemství Value do
client_secret.
Varování
Hodnota tajného klíče klienta je zobrazena pouze jednou. Uložte ji bezpečně, než stránku opustíte.
Oprávnění API¶
- Otevřete registraci aplikace.
- Přejděte na Oprávnění API.
- Klikněte na Přidat oprávnění.
- Vyberte Microsoft Graph.
- Vyberte Oprávnění aplikace.
- Přidejte
Mail.Send. - Klikněte na Poskytnout souhlas správce pro organizaci.
Doporučení ohledně bezpečnosti
Aplikace s oprávněním Mail.Send může umožnit odesílání e-mailů z libovolné schránky v tenantovi.
Použijte zásadu přístupu aplikace Exchange Online (Exchange Online Application Access Policy) k omezení aplikace pouze na schránku nakonfigurovanou v user_email.
Použít konfiguraci¶
- Uložte tajné hodnoty do Vaultu nebo do úložiště tajemství nasazení používaného instalací LogMan.io.
- Aktualizujte
/Site/model.yaml. - Aplikujte model z Knihovny nebo spusťte příkaz pro aplikaci nasazení používaný instalací.
- Odešlete testovací oznámení a ověřte, že zpráva byla doručena z nakonfigurované schránky
user_email.
Ověřte konfiguraci¶
Konfigurace režimu aplikace je připravena, když:
- služba se spouští bez chyb konfigurace Microsoft 365
- registrace aplikace má oprávnění aplikace Microsoft Graph
Mail.Send - byl udělen souhlas správce
- testovací e-mail je doručen z nakonfigurované schránky
user_email - logy služby neobsahují chyby autentizace Microsoft Graph
Delegovaný režim¶
Delegovaný režim používá delegovaná oprávnění Microsoft Graph. Tento režim použijte, když musí komunikační služba odesílat e-maily jménem konkrétního uživatele Microsoft 365.
Delegovaný režim vyžaduje jednorázové povolení v prohlížeči. Uživatelem, který se přihlásí, musí být uživatel poštovní schránky nastavený v user_email, nebo uživatel, kterému Microsoft 365 umožňuje odesílat e-maily jako tato poštovní schránka.
Požadovaná konfigurační pole¶
| Pole | Popis |
|---|---|
mode |
Nastaveno na delegované. |
api_url |
Microsoft Graph send-mail endpoint. Use https://graph.microsoft.com/v1.0/users/{}/sendMail. |
tenant_id |
ID adresáře (tenant) Microsoft Entra. |
client_id |
ID aplikace (klienta) registrace aplikace. |
client_secret |
Hodnota klientského tajemství z registrace aplikace. |
user_email |
Poštovní schránka, ze které služba zasílání zpráv odesílá. |
redirect_uri |
Veřejná URL zpětného volání autorizace končící na /authorize_ms365. |
Vzor konfigurace¶
define:
type: rc/model
services:
asab-iris:
instances:
- node1
asab:
config:
m365_email:
mode: delegated
api_url: https://graph.microsoft.com/v1.0/users/{}/sendMail
tenant_id: "{{M365_TENANT_ID}}"
client_id: "{{M365_CLIENT_ID}}"
client_secret: "{{M365_CLIENT_SECRET}}"
user_email: "notifications@example.com"
redirect_uri: "https://logman.example.com/api/asab-iris/authorize_ms365"
URL authorize_ms365¶
URL authorize_ms365 spouští přihlašovací proces Microsoftu pro delegovaný režim.
Otevřete tuto URL v prohlížeči poté, co je nakonfigurován delegovaný režim. Služba přesměruje prohlížeč na přihlášení Microsoft. Po úspěšném přihlášení Microsoft přesměruje zpět na stejný koncový bod služby a služba uloží delegované oprávnění pro budoucí e-maily.
Jak sestavit URL¶
Sestavte URL z veřejně dostupné adresy služby přístupné z prohlížeče:
<public service base URL>/authorize_ms365
Pokud je služba zpřístupněna za reverzní proxy s předponou cesty, zahrňte předponu:
https://logman.example.com/api/asab-iris/authorize_ms365
Hodnota musí být nastavena na dvou místech:
- V registraci aplikace Microsoft Entra ID jako URI pro přesměrování.
- V konfiguračním poli
m365_email.redirect_uri.
Nebezpečí
Přesměrovací URI v Microsoft Entra ID a hodnota redirect_uri v m365_email.redirect_uri se musí přesně shodovat, včetně https, hostitele, portu a cesty.
Konfigurace Azure¶
- Otevřete Microsoft Entra admin center.
- Přejděte na Applications > App registrations.
- Vytvořte novou registraci aplikace nebo otevřete registraci aplikace používanou pro zasílání zpráv a oznámení.
- Zkopírujte Application (client) ID do
client_id. - Zkopírujte Directory (tenant) ID do
tenant_id. - Přejděte na Authentication.
- Přidejte platformu pro Web.
- Přidejte přesný
redirect_uri, napříkladhttps://logman.example.com/api/asab-iris/authorize_ms365. - Přejděte na Certificates & secrets a vytvořte klientské tajemství.
- Zkopírujte Value tajemství do
client_secret.
Oprávnění API¶
- Otevřete registraci aplikace.
- Přejděte na Oprávnění API.
- Klikněte na Přidat oprávnění.
- Vyberte Microsoft Graph.
- Vyberte Delegovaná oprávnění.
- Přidejte
Mail.Send. - Udělte souhlas správce, pokud to organizace vyžaduje.
Autorizovat delegované odesílání¶
- Nakonfigurujte
m365_emailsmode: delegated. - Aplikujte model LogMan.io.
- Otevřete veřejnou URL
authorize_ms365v prohlížeči. - Přihlaste se pomocí uživatele Microsoft 365, který má odesílat e-maily.
- Po zobrazení zprávy o úspěchu zavřete okno prohlížeče.
- Odešlete testovací oznámení.
Pokud chybí autorizace, služba vrátí chybu obsahující authorize_url. Otevřete tuto URL v prohlížeči a dokončete přihlášení.
Ověřte konfiguraci¶
Konfigurace delegovaného režimu je připravena, když:
- služba se spouští bez chyb konfigurace Microsoft 365
- registrace aplikace má delegované oprávnění Microsoft Graph
Mail.Send redirect_uriodpovídá URI přesměrování v Microsoft Entra ID- otevření
authorize_ms365se dokončí s úspěšnou zprávou
Šablony e-mailů¶
E-mailové šablony musí být uloženy v adresáři /Templates/Email/ v Knihovně.
E-mail MS365 podporuje přílohy. Služba je odesílá jako přílohy souborů Microsoft Graph.
Pro více informací o e-mailových oznámeních a šablonách viz: