3.0 KiB
3.0 KiB
Azure App Registration — Einrichtungsanleitung
Diese Anleitung beschreibt die einmalige Einrichtung einer Azure App Registration, die als Authentifizierungsbasis fuer den Mail-Organizer dient.
1. App Registration anlegen
- Oeffne das Azure Portal: https://portal.azure.com
- Navigiere zu Microsoft Entra ID (ehemals Azure AD) > App registrations
- Klicke New registration
- Konfiguriere:
- Name:
KRAH-Mail-Organizer - Supported account types: "Accounts in this organizational directory only"
- Redirect URI:
http://localhost(Type: Web)
- Name:
- Klicke Register
2. Wichtige IDs notieren
Nach der Registrierung findest du auf der Uebersichtsseite:
- Application (client) ID — wird in
config/settings.jsoneingetragen - Directory (tenant) ID — wird in
config/settings.jsoneingetragen
3. Client Secret erstellen
- Gehe zu Certificates & secrets > Client secrets
- Klicke New client secret
- Beschreibung:
Mail-Organizer - Ablauf: 24 Monate (oder nach Firmenpolicy)
- WICHTIG: Kopiere den Value sofort — er wird nur einmal angezeigt!
- Trage den Wert in
config/settings.jsonunterClientSecretein
4. API-Berechtigungen konfigurieren
- Gehe zu API permissions > Add a permission
- Waehle Microsoft Graph
- Waehle Application permissions (nicht Delegated!)
- Fuege folgende Berechtigungen hinzu:
Mail.Read— E-Mails lesenMail.ReadWrite— E-Mails als gelesen markieren / verschiebenMail.Send— Benachrichtigungen per E-Mail senden (optional)
- Klicke Grant admin consent for [Dein Tenant]
- Erfordert Global Admin oder Application Admin Rechte
- Status muss auf "Granted" wechseln (gruenes Haekchen)
5. Mailbox-Zugriff einschraenken (empfohlen)
Standardmaessig hat eine App mit Mail.Read Zugriff auf ALLE Mailboxen.
Um den Zugriff auf deine Mailbox einzuschraenken:
- Erstelle eine Mail-Enabled Security Group in Exchange Admin Center
- Fuege deine Mailbox als Mitglied hinzu
- Fuehre in PowerShell aus:
# Exchange Online PowerShell verbinden
Connect-ExchangeOnline
# App-Zugriff auf die Gruppe beschraenken
New-ApplicationAccessPolicy `
-AppId "93f9f15c-b566-4ca1-9145-c23f87c7f5c7" `
-PolicyScopeGroupId "chrka@krahgruppe.onmicrosoft.com" `
-AccessRight RestrictAccess `
-Description "Mail-Organizer nur fuer definierte Postfaecher"
6. settings.json konfigurieren
Oeffne config/settings.json und trage deine Werte ein:
{
"TenantId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"ClientId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"ClientSecret": "dein-secret-hier",
"MailboxUser": "christian@example.com"
}
Sicherheitshinweis: In Produktionsumgebungen sollte das ClientSecret nicht im Klartext gespeichert werden. Alternativen:
- Windows Credential Manager
- Azure Key Vault
- Umgebungsvariablen
7. Testen
Fuehre das Test-Script aus:
.\scripts\Test-Connection.ps1
Bei Erfolg siehst du eine Liste der letzten E-Mails. Fertig!