Hinweis:
Mit Dr.DOC gibt es drei E-Mail-Archivierungs-Möglichkeiten. In dieser Doku geht es um die E-Mail-Archivierung via Dr.DOC Web.
Produkt Modul Besonderheiten Dr.DOC Netzwerk (C/S) Dr.DOC Outlook Plugin Vorgangsbezogene (oder automatische) Archivierung in MS Outlook/Plugin via Dr.DOC Netzwerk Client Dr.DOC Netzwerk (C/S) Dr.DOC Server Import Automatisierte Archivierung am Dr.DOC Netzwerk Server via Dateiimport Dr.DOC Web Dr.DOC Web E-Mail-Archivierung (IMAP) Automatisierte, regelbasierte Archivierung am Dr.DOC Web Server via IMAP
Ziel der E-Mail-Archivierung via IMAP ist es, E-Mails automatisiert (unbeaufsichtigt) und regelbasiert zu archivieren. Um die E-Mail-Archivierung regelbasiert zu steuern, werden folgende Einstellungen im Dr.DOC Web Konfigurationsarchiv „node“ ausgelesen:
Type: EmailAccountConfigWebNode
Name: config/email-account/<E-Mail-Account-Name>
Beispel:
Name: config/email-account
Die Einstellungen werden beim Start des Dr.DOC Web Servers neu geladen. Damit eine Änderung wirksam wird, muss unter Dr.DOC Web/Einstellungen/E-Mail-Archivierung/Button "Einstellungen neu laden" geklickt werden.
Ändern der Berechtigungen: Aus Sicherheitsgründen sollte der Node Config Datensatz nur für den Server und berechtigte Administratoren zugreifbar sein, indem der User auf "System-Group" gesetzt wird.
Eine Vererbung über den Prototype-Namen ist möglich; z.B. auf config/email-account
, um bestimmte Einstellungen für alle Konten anzuwenden. Wenn Property Values aus dem Prototype geladen werden sollen, muss das „Inherit“ Flag in der Property gesetzt sein.
Damit ist es möglich, die Einstellungen, die für alle User gültig sind, in den Node "config/email-account" abzuspeichern und in den Konten-Nodes (z.B. "config/email-account/mustermann") den Prototype Name auf "config/email-account" setzen und nur die Properties zu setzen, die überschrieben werden sollen (z.B. "Email", "Password", "Archive_SourceImapFolders", "Archive_Target_FieldPreselectionName").
Alle Properties haben den Type "ConfigWebNode
".
Property Type | Property Name | Beschreibung | Mögliche Werte |
---|---|---|---|
ConfigWebNode | Enabled | Gibt an, ob die Konfiguration aktiv ist | true, false |
ConfigWebNode | E-Mail-Adresse (z.B. test@mail.de) | ||
ConfigWebNode | Password | Passwort für SMTP/IMAP. Nach dem erstmaligen Eintragen wird das Passwort verschlüsselt. |
|
ConfigWebNode | CheckSslCert | Gibt an, ob das TLS/SSL Zertifikat des E-Mail-Servers geprüft werden soll | true, false |
ConfigWebNode | ImapHost | Hostname des IMAP Servers (z.B. mail.de) | |
ConfigWebNode | ImapSSL | Gibt an, ob eine verschlüsselte TLS/SSL Verbindung zum IMAP Server hergestellt werden soll | true, false |
ConfigWebNode | ImapPort | IMAP Portnummer (z.B. 993) | |
ConfigWebNode | SmtpHost | Hostname des SMTP Servers (z.B. mail.de) | |
ConfigWebNode | SmtpSSL | Gibt an, ob eine verschlüsselte TLS/SSL Verbindung zum SMTP Server hergestellt werden soll | |
ConfigWebNode | SmtpPort | SMTP Portnummer (z.B. 587) | |
ConfigWebNode | Archive_Action |
|
Tag, Move, Delete |
ConfigWebNode | Archive_SuccessTag | Tag/Keyword für Property "Archive_Action" mit dem Wert "Tag"; bei erfolgreicher Archivierung; Der Wert darf bei vielen IMAP Servern keine Leerzeichen oder Punkte enthalten |
|
ConfigWebNode | Archive_DuplicateTag | Tag/Keyword für Property "Archive_Action" mit dem Wert "Tag"; bei fehlgeschlagener Archivierung wegen Eingabedublettenprüfung (Schlüsselfeld "DS" mit Feldauswahl für Dublettenprüfung); Der Wert darf bei vielen IMAP Servern keine Leerzeichen oder Punkte enthalten |
|
ConfigWebNode | Archive_SuccessImapFolder | Basis IMAP Verzeichnis für Property "Archive_Action" mit dem Wert "Move"; bei erfolgreicher Archivierung | |
ConfigWebNode | Archive_DuplicateImapFolder | Basis IMAP Verzeichnis für Property "Archive_Action" mit dem Wert "Move"; bei fehlgeschlagener Archivierung wegen Eingabedublettenprüfung (Schlüsselfeld "DS" mit Feldauswahl für Dublettenprüfung) | |
ConfigWebNode | Archive_ErrorImapFolder | Basis IMAP Verzeichnis für Property "Archive_Action" mit dem Wert "Move"; bei fehlgeschlagener Archivierung wegen eines Fehlers | |
ConfigWebNode | Archive_SourceImapFolders | Quell IMAP Verzeichnis(se), in dem die E-Mails archiviert werden sollen. Pro Zeile ein Wert und darf nicht mit / beginnen.Es können auch Wildcards mit " * " angegeben und UND-Bedingungen mit "& " angegeben werden.z.B. " INBOX "oder "Eingangsrechnung" |
|
ConfigWebNode | Archive_Target_UsermanagerName | Ziel-Benutzerverwaltung Pfad zur Usermanager *.BVD Datei |
|
ConfigWebNode | Archive_Target_ArchiveName | Ziel-Archiv Archiv-Name oder vollständiger Pfad zur KOMM\SERVER\*.da Datei |
|
ConfigWebNode | Archive_Target_FieldPreselectionName | Anzuwendende Feldvorbelegung beim Erstellen des Datensatzes im Archiv "Archive_Target_ArchiveName". Über die gesetzten Feldwerte aus der Feldvorbelegung und den übernommenen E-Mail Feldern (z.B. ASCII Import-Definition "DD_EMAIL") kann eine rekursive Archivierung getriggert werden. |
|
ConfigWebNode | Archive_Target_Duplicate | Gibt an, wie Dubletten beim Erstellen eines Dokuments behandelt werden sollen:
|
Drop, Replace, Change |
ConfigWebNode | OAuth2_ClientId | MS 365 / AAD: "Overview" -> "Aplication (client) ID" | |
ConfigWebNode | OAuth2_Authority | MS 365 / AAD: "Overview" -> "Directory (tenant) ID" z.B. https://login.microsoftonline.com/{tenantId}/v2.0 |
|
ConfigWebNode | OAuth2_Scopes | MS 365 / AAD: "API permissions" -> "+Add a permission": Mehrere Einträge möglich (zeilenweise), z.B.:https://outlook.office365.com/.default Oder openid email offline_access https://outlook.office.com/IMAP.AccessAsUser.All Oder in älteren Konfigurationen: https://ps.outlook.com/.default |
|
ConfigWebNode | OAuth2_Secret | MS 365 / AAD: "Certificates & secrets" -> "Client secrets" -> "+ New client secret": Text in Spalte "Value" abspeichern |
Microsoft 365 benötigt einen OAuth2 Login. Das ist leider unnötig kompliziert.
http://localhost
"Yes
email
offline_access
openid
SMTP.Send
User.Read
IMAP.AccessAsUser.All
IMAP.AccessAsApp
Mail.Read
Mail.Send
SMTP.SendAsApp
https://login.microsoftonline.com/<Dierctory (tenant) ID>/oauth2/v2.0/authorize
openid
email
offline_access
https://outlook.office.com/IMAP.AccessAsUser.All
DrDoc.WebServerService.exe
als normale Anwendung starten und nicht als Dienst$AppId = "32d78307-96a6-4d33-k871-7d65d7ae345d"
$TenantId = "485ed665-e9ea-4569-xc67-4152462107fe"
$Email = "mail@drdoc.onmicrosoft.com"
$DisplayName = "Some principal name for IMAP/POP3"
Install-Module -Name ExchangeOnlineManagement
Import-module ExchangeOnlineManagement
Connect-ExchangeOnline -Organization $TenantId
# Install-Module -Name AzureAD
# Import-module AzureAD
# Connect-AzureAd -Tenant $TenantId
($Principal = Get-AzureADServicePrincipal -filter "AppId eq '$AppId'")
$PrincipalId = $Principal.ObjectId
# New-ServicePrincipal -AppId $AppId -ObjectId <OBJECT_ID>
New-ServicePrincipal -AppId $AppId -ServiceId $PrincipalId -DisplayName $DisplayName
Get-ServicePrincipal | fl
Add-MailboxPermission -Identity $Email -User $PrincipalId -AccessRights FullAccess