Wie können wir helfen?
PGP Mailauswertung
Allgemeines
Der MailAgent ist eine Software (Konsolenanwendung) die zur Auswertung von E-Mails dient. Bei der Auswertung durch den EinsatzMonitor ist keine Auswertung von PGP Verschlüsselten E-Mails möglich.
Mit dem MailAgent können beliebig viele E-Mail Postfächer gleichzeitig ausgewertet und an verschiedene Connect Standorte hochgeladen werden.
Aufgrund von Abhängigkeiten von Drittanbietern läuft der MailAgent aktuell nur auf Windows. Unterstützt werden IMAP und Microsoft Exchange. Pro Postfach kann ein Standort (API-Key) zugeordnet werden. Die Auswertung der E-Mails ist in folgenden Modi möglich:
- 1.PGP-Verschlüsselte Klartextmails mit direkter Auswertung nach Connect (ConnectEncrypted)
- 2.Unverschlüsselte Klartext-E-Mails (ConnectPlain)
- 3.PGP-Verschlüsselte E-Mails mit PDF-Anhang ohne Klartext (PDF)
- 4.PGP-Verschlüsselte E-Mails mit Klatext mit Ausgabe einer Textdatei (Text)
Die direkte Auswertung nach Connect erfolgt mit regulären Ausdrücken (RegEx). Falls dieser Modus verwendet wird, muss auch der Abschnitt ConnectPatternOptions gepflegt werden.
Bezug der Software
Der Feuersoftware MailAgent steht Kunden (aktive Connect Lizenz) kostenfrei zur Verfügung. Die Software steht nicht öffentlich zum Download bereit.
Bitte wenden Sie sich per Mail (info@feuersoftware.com) an den Support um die Software und Hilfe bei der Einrichtung zu erhalten.
Voraussetzungen
Vor der Inbetriebnahme des MailAgents muss das Tool GnuPG for Windows (GPG4Win) installiert werden. Dies kann unter https://gnupg.org/download/index.html im unteren Bereich kostenfrei heruntergeladen. In diesem Toolset ist das Programm Kleopatra enthalten. Dort werden die öffentlichen und privaten Schlüssel verwaltet.
Das Standard-Installationsverzeichnis für GnuPG ist C:\Program Files (x86)\GnuPG\bin, dies sollte auch nach Möglichkeit so bleiben.
In Kleopatra muss dann der öffentliche und private Schlüssel importiert werden und eine Vertrauensstellung für diese hergestellt werden. Um Fehler zu vermeiden empfiehlt es sich, beim privaten Schlüssel das Passwort zu entfernen, sollte eines gesetzt sein.
Konfiguration
Die Konfiguration des MailAgents muss in der im gleichen Verzeichnis befindlichen appsettings.json-Datei vorgenommen werden. Informationen zu der Konfiguration sind in der Datei readme.md zu finden.
Prozessoren
Um verschiedene Anwendungsfälle abdecken zu können, können beliebig viele Prozessoren registriert werden, um Mails zu verarbeiten. Aktuell sind folgende Prozessoren implementiert:
Textprozessor (PGP)
Der verschlüsselte „text/plain“ Part der Mail wird extrahiert und an GnuPG übergeben. Dort wird dieser entschlüsselt. Der entschlüsselte Text wird in einer Textdatei im konfigurierten Ausgabeverzeichnis abgelegt.
PDF-Processor (PGP)
Die entschlüsselten Daten sind Base64-kodiert. Die konvertierten Daten werden dann als PDF-Datei ins konfigurierte Ausgabeverzeichnis geschrieben. Danach erfolgt die Verarbeitung mit EM-OCR.
ConnectPlainProzessor (Unverschlüsselt)
Der „text/plain“ Part der Mail wird extrahiert. Unter ConnectPatternOptions
müssen unter den einzelnen Unterpunkten reguläre Ausdrücke (Regex) angegeben werden, um die Informationen zu extrahieren.
Dabei wird für die Extraktion die erste Capture-Group genutzt.
NumberPattern
-> Extrahiert die EinsatznummerKeywordPattern
-> Extrahiert das EinsatzstichwortFactsPattern
-> Extrahiert den SachverhaltStreetPattern
-> Extrahiert die StraßeHouseNumberPattern
-> Extrahiert die HausnummerCityPattern
-> Extrahiert die Stadt/GemeindeDistrictPattern
-> Extrahiert den Stadt-/OrtsteilZipCodePattern
-> Extrahiert die PostleitzahlRicPattern
-> Extrahiert die Schleifen (RIC)ReporterNamePattern
-> Extrahiert den Namen des MeldendenReporterPhonePattern
-> Extrahiert die Telefonnummer des MeldendenLatitudePattern
-> Extrahiert die den Lat-Wert der KoordinatenLongitudePattern
-> Extrahiert die Lng-Wert der Koordinaten- Unter
AdditionalProperties
können beliebig viele Zusatzinformationen angegeben werden, die ausgewertet werden sollen. Für jede Zusatzinformation muss ein Name (der später die Feldbezeichnung in Connect ist) und ein Pattern (Regex) angegeben werden.
Konfigurationsbeispiel
für eine Mail mit semikolongetrennten Werten:
"ConnectPatternOptions": {
"NumberPattern": "",
"KeywordPattern": "Alarmstichwort:[^;]*;[^;]*;([^;]*);",
"FactsPattern": "Alarmstichwort:[^;]*;[^;]*;[^;]*;([^;]*);",
"StreetPattern": "Adresse:([^;]*)",
"HouseNumberPattern": "Adresse:[^;]*;([^;]*)",
"CityPattern": "Einsatzort:([^;]*);",
"DistrictPattern": "Einsatzort:[^;]*;([^;]*);",
"ZipCodePattern": "",
"RicPattern": "Alarmierte Einheiten:([^;]*)",
"ReporterNamePattern": "",
"ReporterPhonePattern": "",
"LatitudePattern": "",
"LongitudePattern": "",
"AdditionalProperties": [
{
"Name": "Einsatzart",
"Pattern": "Alarmstichwort:([^;]*);"
}
]
},
Für das entwickeln der regulären Ausdrücke sind folgende Seiten/Tools hilfreich:
https://regex101.com/ (Testen und entwickeln)
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions/Cheatsheet
Abschnitt Serilog
Dies ist die Konfiguration der Protokollierung. Unter MinimumLevel
kann die Protokollierungebene gewählt werden. Gültige Werte sind: Debug
, Information
, Warning
, Error
und Critical
. Im Unterabschnitt WriteTo
unter „File“ kann der Pfad für die Logdateien und die Anzahl der Logdateien, die aufbewahrt werden sollen, gewählt werden. Im Pfad müssen doppelte \
verwendet werden!
Abschnitt ConnectPatternOptions
Siehe ConnectPlainProzessor. Wird nur verwendet, wenn o.g. Prozessor verwendet wird.
Abschnitt MailAgentOptions
Hier werden die allgemeinen Einstellungen zum Programm verwaltet.
Unter EmailSettings
können beliebig viele E-Mail-Accounts mit den zugehörigen Connect-Standorten hinterlegt werden.
Name
-> Der Name des Standorts (dient nur der besseren Zuordnung)ApiKey
-> Der Schlüssel für die öffentliche Connect-Schnittstelle (Nur wenn benötigt)EMailHost
-> Der Hostname des Mailservers (z.B.imap.strato.de
oder bei Exchange z.B.exchange.meinedomain.de
(Ohne HTTPS und auch ohne Pfad!)EMailPort
-> Port des Mailservers (Bei IMAP standardmäßig 993, bei Exchange 443)EMailUsername
-> Benutzername (Bei Exchangexy@meinedomain.de
, nichtmeinedomain\xy
)EMailPassword
-> PasswortEMailSubjectFilter
-> Text, der im Betreff der Mail vorhanden sein muss, damit sie verarbeitet wird. Alles andere wird ignoriert.EMailSenderFilter
-> Text, der im Absender der Mail vorhanden sein muss, damit sie verarbeitet wird. Alles andere wird ignoriert.
Weitere Einstellungen:EMailPollingIntervalSeconds
-> Abrufintervall der Mails in Sekunden (Standard: 5 Sekunden)PGPGnuPGPath
-> Der Pfad zu GnuPG (nur benötigt, wenn PGP verwendet wird)SecretKeyPassphrase
-> Die Passphrase des Private-Keys für PGP (nur benötigt, wenn PGP verwendet wird, kann auch bei PGP leer sein)OutputPath
-> Der Ausgabepfad (nur benötigt, wenn entsprechender Prozessor verwendet wird)ProcessMode
-> Die Einstellung, welcher Prozessor zum Verarbeiten der Mails verwendet werden soll.Pdf
-> PDF-Prozessor (PGP)Text
-> Text-Prozessor (PGP)ConnectPlain
-> ConnectPlain-Prozessor (unverschlüsselt, Auswertung mit RegEx direkt nach Connect)ConnectEncrypted
-> ConnectEncrypted-Prozessor (PGP-Verschlüsselt, Auswertung mit RegEx direkt nach Connect)
- EMailMode -> Einstellung ob
Imap
oderExchange
verwendet werden soll. - IgnoreCertificateErrors -> Auf
true
, wenn Zertifikatsfehler (z.B. für Exchange) ignoriert werden sollen.
Inbetriebnahme
Der MailAgent kann sowohl als Windows-Dienst oder als normale Anwendung betrieben werden. Für die Registrierung als Windows-Dienst muss die Batchdatei install.bat ausgeführt werden. Danach muss der Dienst in den Windows-Einstellungen noch überprüft werden, ob der automatische Start eingestellt ist.
Endbestimmungen
Die Weitergabe dieser Software ist ohne ausdrückliche Genehmigung der Feuer Software GmbH nicht gestattet. Des weiteren wird der MailAgent ausschließlich für Connect-Kunden verfügbar.