====== Einrichtung von OAuth Client Anmeldung über Microsoft 365 mit eBiss ====== ===== Teil 1: Einrichtung im Azure Portal ===== Diese Anleitung befindet sich auch als PDF in Ihrem eBiss Verzeichnis unter ''.\StandardTemplates\Misc\OAuth_M365_eBiss_Anleitung.pdf'' ==== 1.1 App-Registrierung erstellen ==== Navigiere im Azure Portal zu **Entra ID** und wähle dann **Verwalten → App-Registrierungen → Neue Registrierung**. Folgende Einstellungen vornehmen: * Einen eindeutigen Namen für die Anwendung vergeben. * Unterstützte Kontotypen wählen (Standard: //Nur Konten in diesem Organisationsverzeichnis, Einzelner Mandant//) * Auf **Registrieren** klicken. ==== 1.2 Client ID und Tenant-ID notieren ==== Nach der Registrierung werden zwei wichtige IDs angezeigt, die für alle weiteren Schritte benötigt werden: ^ Bezeichnung ^ Beschreibung ^ | **Client ID** | Auch „Anwendungs-ID" genannt. Eindeutige Kennung dieser App-Registrierung. | | **Tenant-ID** | Auch „Verzeichnis-ID" genannt. Identifiziert den Azure AD-Mandanten (die Organisation). | ⚠ Beide IDs jetzt notieren – sie werden später in den PowerShell-Befehlen benötigt. ==== 1.3 Client Secret erstellen ==== **Hinweis:** Zertifikatsgeheimnisse werden aktuell nicht unterstützt. Es muss ein Client Secret verwendet werden. Navigiere zu **Zertifikate & Geheimnisse → Clientanmeldeinformationen → Neuer geheimer Clientschlüssel**. * Eine Beschreibung und eine Gültigkeitsdauer wählen. * Auf **Hinzufügen** klicken. ⚠ Das Client Secret wird nur einmal angezeigt! Direkt nach der Erstellung kopieren und sicher speichern. ==== 1.4 Unternehmens-Objekt-ID notieren ==== Wechsle in Entra ID zu **Unternehmensanwendungen**. Die neu erstellte App-Registrierung in der Liste suchen und öffnen. ^ Bezeichnung ^ Beschreibung ^ | **Objekt-ID** | Die ID des Enterprise-Anwendungsobjekts – abweichend von der Client ID der App-Registrierung. | ==== 1.5 API-Berechtigungen hinzufügen ==== Navigiere zurück zur App-Registrierung unter **API-Berechtigungen → Berechtigung hinzufügen**. * Reiter **„Von meiner Organisation verwendete APIs"** wählen. * Nach „SMTP" suchen und die Berechtigung **SMTP.SendAsApp** hinzufügen. * Nach „POP" suchen und die Berechtigung **POP.AccessAsApp** hinzufügen. ⚠ Diese Berechtigungen erfordern eine Admin-Einwilligung. Einen Azure-Administrator bitten, die Berechtigungen zu genehmigen („Admin-Zustimmung erteilen"). ===== Teil 2: Konfiguration per PowerShell ===== Die folgenden Schritte müssen von einem **Exchange-Administrator** in PowerShell ausgeführt werden. ==== 2.1 Exchange Online Modul laden und verbinden ==== Import-Module ExchangeOnlineManagement Connect-ExchangeOnline -Organization ^ Cmdlet ^ Beschreibung ^ | ''Import-Module'' | Lädt das Exchange Online PowerShell-Modul, das die spezifischen Cmdlets für Exchange-Verwaltung bereitstellt. | | ''Connect-ExchangeOnline'' | Baut eine authentifizierte Verbindung zu Exchange Online auf. Der Parameter ''-Organization'' gibt die Tenant-ID an, um den richtigen Mandanten zu adressieren. | ==== 2.2 Service Principal registrieren ==== New-ServicePrincipal -AppId -ObjectId -DisplayName ^ Cmdlet ^ Beschreibung ^ | ''New-ServicePrincipal'' | Registriert die Azure AD-App-Registrierung als Service Principal in Exchange Online. Erst dadurch erkennt Exchange die App als berechtigten Akteur. AppId = Client ID, ObjectId = Unternehmens-Objekt-ID, DisplayName frei wählbar (aus Schritt 1.4). | ==== 2.3 SMTP-Authentifizierung aktivieren ==== Wähle eine der beiden Optionen: === Option A: Nur für ein einzelnes Postfach === Set-CASMailbox -Identity -SmtpClientAuthenticationDisabled $false ^ Cmdlet ^ Beschreibung ^ | ''Set-CASMailbox'' | Konfiguriert die Client Access Services (CAS) für ein einzelnes Postfach. Mit ''-SmtpClientAuthenticationDisabled $false'' wird SMTP-Auth speziell für dieses Postfach aktiviert, auch wenn sie organisationsweit deaktiviert ist. | === Option B: Organisationsweit === Set-TransportConfig -SmtpClientAuthenticationDisabled $false ^ Cmdlet ^ Beschreibung ^ | ''Set-TransportConfig'' | Ändert die globale Transportkonfiguration für die gesamte Organisation. Aktiviert SMTP-Client-Authentifizierung für alle Postfächer. Nur empfohlen, wenn alle Postfächer SMTP Auth benötigen. | ==== 2.4 Postfachberechtigungen vergeben ==== Add-MailboxPermission -Identity -User "" -AccessRights FullAccess ^ Cmdlet ^ Beschreibung ^ | ''Add-MailboxPermission'' | Gewährt dem Service Principal (referenziert über den DisplayName aus Schritt 2.2) vollständigen Zugriff (FullAccess) auf das angegebene Postfach. Nötig, damit die App E-Mails lesen und verwalten kann (z. B. per POP). | Add-RecipientPermission -Trustee "" -AccessRights SendAs ^ Cmdlet ^ Beschreibung ^ | ''Add-RecipientPermission'' | Erlaubt dem Service Principal, E-Mails im Namen des angegebenen Postfachs zu versenden („Send As"). Der Trustee ist der DisplayName des Service Principals aus Schritt 2.2. | ===== Teil 3: Konfiguration in eBiss3 ===== Die Kommunikationskanäle werden in eBiss3 unter **Kommunikationskanäle einrichten** konfiguriert. Folgende Einstellungen gelten für beide Kanäle, sofern nicht abweichend angegeben. ==== 3.1 SMTP Send (ausgehende E-Mails) ==== ^ Parameter ^ Wert ^ | **Host** | ''smtp.office365.com'' | | **Port** | ''587'' | | **SSL-Verhalten** | Explicit (STARTTLS – Verbindung startet unverschlüsselt, wird dann auf TLS hochgestuft) | | **Authentifizierung** | OAuth 2.0 | | **Benutzername** | Vollständige E-Mail-Adresse des Absenders (z. B. ''sender@domain.com'') | | **Client ID** | Client-ID aus Schritt 1.2 | | **Client Secret** | Client Secret aus Schritt 1.3 | | **Server URL** | ''https://login.microsoftonline.com//oauth2/v2.0/token'' | | **Auth URL / Scope** | ''https://outlook.office365.com/.default'' | ==== 3.2 POP3 Receive (eingehende E-Mails) ==== Die Konfiguration entspricht weitgehend dem SMTP-Send-Kanal. Folgende Parameter weichen ab: ^ Parameter ^ SMTP Send ^ POP3 Receive ^ | **Host** | ''smtp.office365.com'' | ''outlook.office365.com'' | | **Port** | ''587'' | ''995'' | | **SSL-Verhalten** | Explicit | Implicit (direkte TLS-Verbindung ohne vorherigen Klartext-Handshake) | Alle übrigen Parameter (Authentifizierung, Benutzername, Client ID, Client Secret, Server URL, Auth URL) bleiben identisch zu SMTP Send. ---- Nach Abschluss aller drei Teile ist die OAuth 2.0-Verbindung zwischen eBiss3 und Microsoft 365 vollständig eingerichtet.