Viele Inhalte sind nur für berechtigte Benutzer sichtbar (z.B. Kunden, IT-Systemhäuser, Partner)
Es können alle Benutzer samt Gruppenmitgliedschaft aus Ihrem Active Directory (AD) nach Dr.DOC Synchronisiert werden. Der Sync Intervall beträgt 30 Minuten.
Folgende Eigenschaften werden übertragen:
Der Dr.DOC Benutzermanager MUSS für alle verwendeten Benutzerverwaltungen folgende Einstellungen gesetzte haben, unter Menü -> Benutzerverwaltung -> Eigenschaften -> "Automatische Anmeldung mit Netzwerk-Anmeldenamen" auf: "Ja, alle Benutzer" oder "Benutzerspezifisch" (empfohlen).
Die Richtung ist unidirektional, vom AD nach Dr.DOC.
Die Gruppenmitgliedschaften der Benutzer werden beim Sync angewendet; dabei werden keine Gruppen in Dr.DOC erstellt - nur die Benutzer den existiereden Gruppen hinzugefügt.
Es werden keine Benutzer aus Dr.DOC gelöscht oder aus Gruppen augetragen.
Es werden nur Benutzer synchronisiert, die:
ExcludeUsers Eigenschaft aufgelsitet sindIncludeGroups gesetzt ist: Der User Mitglied einer der Elemente von IncludeGroups istAccountExpirationDate)1.) Benutzer, die nicht im AD existieren, aber in Dr.DOC existieren, können wie gewohnt authentifiziert werden.
Diese Benutzer sollten ein sicheres Passwort verwenden und den Flag "Automatische Anmeldung mit Netzwerk-Anmeldenamen" nicht aktiv haben.
2.) Alle anderen (vom AD nach Dr.DOC synchronisierte) Benutzer bekommen in Dr.DOC automatisch den Flag "Automatische Anmeldung mit Netzwerk-Anmeldenamen" und "Anmeldenamen identisch".
Diese Benutzer werden über das AD bzw. via LDAP authentifiziert.
Melden Sie sich in Dr.DOC Web an. Sie benötigen das Recht, auf den Dr.DOC Benutzermanager zuzugreifen (Im Dr.DOC Client, unter Menü Organisation -> Benutzermanager -> Benutzer in Benutzermanager wählen -> Beschreibung -> "Zugangsberechtigung für Benutzermanager").
Im Dr.DOC Web, unter Menü -> Einstellungen -> "Active Directory (AD)" können Sie den die AD Anmeldedaten eingeben und den Sync aktivieren.
Dr.DOC Web hat seit 01.07.2025 einen MCP Server (Model Context Protocol) integriert.
Dadurch können Sie durch ein KI Modell Dr.DOC Funktionen auswählen, deren Funktions-Parameter generieren lassen und anschließend vom Client ausführen lassen.
https://drdoc.com/node/de/products/web/doku/ai-kuenstliche-intelligenz/mcp
Datensatz laden, in der Maske rechts auf "Dokument AI"
Ab Dr.DOC Web V105 / 08.08.2025
Beim Dokumente Archivieren wird:
Die Magische Archivierung wählt aus allen Document Encodern (siehe unten "Einzelne Document Encoder erstellen/definieren je Prozess"), den passendsten Document Encoder aus.
Geben Sie zur Aktivierung der magischen Archivierung folgende Werte im Document Encoder (rekursive Archivierung) in den Einstellungen für config/recursive/DEFAULT_AI an:
I.d.R. müssen Sie nur das Ollama Endpint, Model und Ihr Standard-Archiv wählen.
| Property Name | Property Value Beispiel-Wert |
Beschreibung |
|---|---|---|
| Enabled | false | |
| Selector_ArchiveName | doc | Standard-Archiv für die Magische Archivierung, falls kein passender Document Encoder gefunden wurde. |
| AI_Enabled | true | Aktiviert die magische Archivierung |
| AI_OllamaEndpoint | http://drdoc.com:8080 | Ollama Endopoint |
| AI_OllamaModel | Ollama Model | |
| AI_DocumentLabel | General Document | Pflichtfeld: Bezeichner, falls kein falls kein passender Document Encoder gefunden wurde. |
| AI_DocumentDescription | Optional: Beschreibung, falls kein falls kein passender Document Encoder gefunden wurde. |
Definieren Sie pro Prozess/Vorgangstyp/Verarbeitungstyp einen Document Encoder.
Dabei kann wieder die KI zum Verschlagworten genutzt werden (siehe unten "Automatische KI Verschlagwortung innerhalb eines Archivs").
Es sind bereits zahlreiche Vorlagen angelegt, die kopiert oder überladen werden können.
Damit die magische Archivierung einen Document Encoder wählen kann, MÜSSEN folgende Document Encoder Properties gesetzt sein:
Enabled: trueAI_DocumentLabel: Kurzbezeichner MUSS vorhandenProto_Extension: Der Prototype MUSS zum Dateinamen passtSelector_ArchiveName: ein Archiv Name sollte vorhanden sein, und das Archiv existieren, andernfalls wird das Archiv aus config/recursive/DEFAULT_AI gewählt.Beispiel:
Anbei ein Beispiel für PDFs
Wann wird der Document Encoder ausgeführt? / via Selektor:
z.B. der Feldauswahl für Feldinhaltsspezifische Einstellungen "IN_INVOICE"
z.B. Feldauswahl für ASCII Import Definition "AI_IN_INVOICE"
Optional: Anlegen der Feldauswahl für Feldvorbelegung "IN_INVOICE"
Legen Sie nun einen Document Encoder an, in denen die KI Archivierung im Speziellen gesteuert werden soll.
via Einstellungen -> Document Encoder (rekursive Archivierung)
Überladen (vererben) Sie vom Document Encoder, und geben Sie als Prototype an "config/recursive/DEFAULT_AI", damit Sie das Ollama Model etc. nicht mehrfach angeben müssen.
Bitte beachten Sie, dass die Pflichtfelder über Vererbung geladen werden können und nicht explizit angegeben werden müssen.
| Property Name | Pflichtfeld | Property Value Beispiel-Wert |
Beschreibung |
|---|---|---|---|
| Enabled | x | true | |
| Proto_Extension | x | *.pdf|*.tif|*.tiff | Selektor für Dokument-Dateitypen (Extensions) |
| - | - | ||
| Selector_ArchiveName | x | doc | Archiv Name |
| Selector_Filename | !AGB*&!*Geschäftsbedingungen*&!*Datenschutz* | Dateinamen filtern | |
| Selector_FieldSelectionNames | IN_INVOICE | Bezeichner für Feldinhaltsspezifische Feldauswahl für Selector | |
| Selector_FieldSelectionType | FIELDCONTENT | Typ der Feldauswahl für Selector | |
| - | - | ||
| AI_Enabled | x | true | Aktiviert die magische Archivierung könnte z.B. vom Prototype config/recursive/DEFAULT_AI geladen werden |
| AI_OllamaEndpoint | x | http://drdoc.com:8080 | Ollama Endopoint könnte z.B. vom Prototype config/recursive/DEFAULT_AI geladen werden |
| AI_OllamaModel | x | Ollama Model könnte z.B. vom Prototype config/recursive/DEFAULT_AI geladen werden |
|
| - | - | ||
| AI_DocumentLabel | x | Eingangsrechnung | Pflichtfeld: Bezeichner |
| AI_DocumentDescription | Rechnung an Empfänger Firma Mustermann GmbH | Optional: Beschreibung | |
| AI_MapFieldSelectionName | AI_IN_INVOICE | Bezeichner einer ASCII Import Feldauswahl mit Feldbeschreibungen. Default: DD_FIELD_DESC |
|
| AI_OverwriteMetaInfo | true | KI kann Meta-Info Feldwerte überschreiben | |
| AI_MaxPagesCount | 5 | Maximal 5 Seiten verarbeiten | |
| - | - | ||
| Action | CreateDocument | Dokument erstellen mit neuer Meta-Info | |
| Action_FieldPreselectionName | IN_INVOICE | Feldauswahl für Feldvorbelegung, bestimmte Feldwerte vorbelegen |
Backups können in Dr.DOC Web unter Einstellungen -> Backup eingerichtet werden.
Dr.DOC Web verwendet dazu Restic mit SFTP.
Damit Dr.DOC Restic verwenden kann muss zuvor ein SSH Schlüssel eingerichtet werden.
Das hat überhaupt nichts mit Dr.DOC zu tun und kann je nach System unterschiedlich gehandhabt werden.
- Key pair is created (typically by the user). This is typically done with ssh-keygen.
- Private key stays with the user (and only there), while the public key is sent to the server. Typically with the ssh-copy-id utility.
- Server stores the public key (and "marks" it as authorized).
mkdir "%USERPROFILE%\.ssh"
ssh-keygen -t rsa -b 4096 -f "%USERPROFILE%\.ssh\id_rsa" -q -N ""
Für Hetzner Storage Box:
https://docs.hetzner.com/storage/storage-box/backup-space-ssh-keys/
type %USERPROFILE%\.ssh\id_rsa.pub | ssh -p23 uXXXX@uXXXX.your-storagebox.de install-ssh-key
oder
.ssh Verzeichnis erstellen und Schlüssel hochladen
type %USERPROFILE%\.ssh\id_rsa.pub | ssh -p23 uXXXX@uXXXX.your-storagebox.de "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
mkdir -p ~/.ssh
ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa -q -N ""
chmod 600 ~/.ssh/id_rsa
ssh-copy-id -s "uXXXX@uXXXX.your-storagebox.de -p 23"
.ssh Verzeichnis erstellen
ssh -p23 uXXXX@uXXXX.your-storagebox.de mkdir .ssh
Schlüssel via SCP hochladen
Für Hetzner Storage Box:
https://docs.hetzner.com/storage/storage-box/backup-space-ssh-keys/
cat ~/.ssh/id_rsa.pub | ssh -p23 uXXXX@uXXXX.your-storagebox.de install-ssh-key
oder
scp -P 23 ~/.ssh/id_rsa.pub uXXXX@uXXXX.your-storagebox.de:.ssh/authorized_keys
Oder .ssh Verzeichnis erstellen und Schlüssel hochladen
cat ~/.ssh/id_rsa.pub | ssh -p23 uXXXX@uXXXX.your-storagebox.de "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
Klicken Sie in Dr.DOC Web unter "Einstellungen" -> "Backup" auf den Button "Init"
Für Dr.DOC Client/Server Netzwerk siehe: https://drdoc.com/node/de/products/n/doku/e-invoice-xrechnung-zugferd
Unternehmen in Deutschland müssen/mussten bis 1. Januar 2025 die technischen Voraussetzungen schaffen für die Entgegennahme einer E-Rechnung.
Mehr dazu: https://drdoc.com/node/de/solutions/e-invoice
Hinweis: Die genannten Informationen und Auskünfte enthalten nur erste Hinweise und erheben daher keinen Anspruch auf Vollständigkeit. Obwohl sie mit größtmöglicher Sorgfalt erstellt wurden, kann eine Haftung für ihre inhaltliche Richtigkeit nicht übernommen werden. Sie können eine Beratung im Einzelfall, beispielsweise durch einen Rechtsanwalt, Steuer- oder Unternehmensberater, nicht ersetzen.
| Prozess | Format | Produkt Dr.DOC Web |
Produkt Dr.DOC Client/Server Netzwerk |
|---|---|---|---|
| 1. generieren, ausstellen | ZUGFeRD, XRechnung (XML) |
i.d.R. durch Ihr ERP System und nicht durch Dr.DOC; optional: Ja: via WebNode Template + Maske -> Dokument generieren |
Nein |
| 2. versenden | Alles | Ja: via E-Mail | Ja: via E-Mail |
| 3. archivieren / erfassen / verschlagworten | ZUGFeRD | Ja: via Einstellungen -> Rekursive Archivierung | Ja: via Dokumenten-Import |
| " | XRechnung (XML) | Ja: via Einstellungen -> Rekursive Archivierung | Ja: via ASCII-Import PDF bei Archivierung generieren und XML einbetten |
| 4. anzeigen / rendern | ZUGFeRD | Ja (PDF) | Ja (PDF) |
| " | XRechnung (XML) | Ja, integrierter XRechnungs-Viewer | Ja: Ansicht vom gerenderten PDF bei Archivierung oder Raw XML-Ansicht |
| 5. validieren | ZUGFeRD, XRechnung (XML) |
Ja, über kostenpflichtiges Add-On | Ja, über kostenpflichtiges Add-On |
In das jeweilige Dr.DOC-Feld den kompletten XML-PFAD (XPath) zu dem gewünschten Importwert(en) eintragen. z.B. mit | separiert, um UBL und CII Rechnungen in einer Definition zu verarbeiten.
Nachfolgend einige Beispieleinträge:
| Dr.DOC Archiv-Feld | Feldauswahl für ASCII-Import: XML-Import -Definition |
|---|---|
| Beleg-Nr. | `/CrossIndustryInvoice/ExchangedDocument/ID |
| Beleg-Datum | `/CrossIndustryInvoice/ExchangedDocument/IssueDateTime/DateTimeString |
| Kunden-Name | `/CrossIndustryInvoice/SupplyChainTradeTransaction/ApplicableHeaderTradeAgreement/BuyerTradeParty/Name |
| Bruttobetrag | `/CrossIndustryInvoice/SupplyChainTradeTransaction/ApplicableHeaderTradeSettlement/SpecifiedTradeSettlementHeaderMonetarySummation/GrandTotalAmount |
| Eigenschaft | Wert | Beschreibung |
|---|---|---|
| Enabled | true | Aktivieren |
| Proto_Extension | *.xml | Dokumenten Parser für XML Dateien wählen |
| Selector_Filename | *.xml | |
| Action | None | Mit Flag "None" Dokument nicht zwingend erstellen und Rechnungsinformationen (in Metainfo) laden |
| Action_FieldPreselectionName | EINGANGSRECHNUNG | Feldvorbelegung |
| MapFieldSelectionName | XML_INVOICE | Mapping Feldauswahl aus Schritt 1. übernehmen für Übernahme der strukturierte Rechnungsinformationen (XML) |
| MapFieldSelectionType | IMPORT_ASCII | Feldauswahl für ASCII-Import |
| Eigenschaft | Wert | Beschreibung |
|---|---|---|
| Enabled | true | Aktivieren |
| Proto_Extension | Dokumenten Parser für PDF Dateien wählen | |
| Selector_Filename | !AGB*&!*Geschäftsbedingungen*&!*Datenschutz*&*.pdf | Dateinamen mit AGB etc. ignorieren |
| Action | CreateDocument | Dokument zwingend erstellen |
| Recursive | config/recursive/RE XML | Metadaten aus der Embedded XML-Datei laden (z.B. factur-x.xml) |
siehe https://drdoc.com/node/de/products/n/doku/e-invoice-xrechnung-zugferd
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 Wenn das Ziel-Archiv leer ist (nicht angegeben wird), wird die magische KI Archivierung gestartet. https://drdoc.com/node/de/products/web/doku/ai-kuenstliche-intelligenz |
|
| ConfigWebNode | Archive_Target_FieldPreselectionName | Anzuwendende Feldvorbelegung beim Erstellen des Datensatzes im Archiv "Archive_Target_ArchiveName" bzw. dem Archiv, welchges die magische Archivierung gewählt hat. Die IMAP E-Mail-Archivierung wendet die Feldauswahl für Feldvorbelegung, sofern gesetzt, immer und überschreibend vor der Archivierung aus. Es können mehrere Feldvorbelegungen angegeben werden, mit ";" separiert. Dynamisch: Über die gesetzten Feldwerte, u.a. aus der Feldvorbelegung und den übernommenen E-Mail Feldern (z.B. ASCII Import-Definition "DD_EMAIL"), kann eine rekursive Archivierung/Document Encoder dynamisch getriggert werden. Statisch: Alternativ kann direkt ein Name für einen Document Encoder für rekursive Archivierung angegeben werden, z.B. config/recursive/RE PDF CreateDocumentBei der direkten Angabe eines Document Encoders, wird dieser gewählt, unabhängig davon, ob Enabled: true/false; es wird nur auf den Prototype bzw. den Dateityp geprüft. |
|
| 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/.defaultOder openidemailoffline_accesshttps://outlook.office.com/IMAP.AccessAsUser.Allhttps://outlook.office.com/SMTP.SendOder 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 | |
| ConfigWebNode | Account | Explizite Angabe einer Account ID oder Usaernames, falls es zum E-Mail Konto mehrere Konten zur Auswahl gibt. |
Hinweise und Anleitung zu Microsoft Office 365
Microsoft 365 benötigt einen OAuth2 Login. Das ist leider unnötig kompliziert.
Anbei eine Anleitung, wie man im Microsoft Azure Active Directory eine IMAP App registriert.
- Microsoft Azure Active Directory IAM (AAD IAM starten und App hinzufügen mit IMAP Rechten)
Siehe dazu:
https://learn.microsoft.com/en-us/entra/identity-platform/quickstart-register-app
- https://portal.azure.com/#view/Microsoft\_AAD\_IAM/ActiveDirectoryMenuBlade/\~/Overview
- Register new App (+):
https://portal.azure.com/#view/Microsoft_AAD_RegisteredApps/CreateApplicationBlade/isMSAApp~/false- "Authentication"
- "Platform configuration", "+ Add a platform" -> "Mobile and desktop applications"
Redirect URIs: "http://localhost"- "Advanced settings" -> "Allow public client flows":
Yes- "Certificates & secrets" -> "Client secrets" -> "+ New client secret": Text in Spalte "Value" abspeichern
- "API permissions" -> "+Add a permission" (mit "*" sind optional, wenn E-Mails auch versendet werden sollen)
- API "Microsoft Graph" -> "Delegated permission"
- OpenId permissions
offline_accessopenid- SMTP
- *
SMTP.Send- User
User.Read- IMAP
IMAP.AccessAsUser.All- API "Office 365 Exchange Online" -> "APIs my organization uses" -> search "Office 365 Exchange Online" -> "Application permissions"
- IMAP
IMAP.AccessAsApp
- *
Mail.Read- *
Mail.Send- SMTP
- *
SMTP.SendAsApp- Check "Grant admin consent for <Tenant-Name>"
- Besitzer der App festlegen via Menü "Owners"
- Evtl.: Benutzer der App hinzufügen:
https://portal.azure.com/?feature.msaljs=true#view/Microsoft_AAD_UsersAndTenants/UserManagementMenuBlade/~/AllUsers- Benutzer wählen
- "Authentication methods" ->
- "Overview" Access Points abspeichern (siehe 2. unten)
- Application (client) ID
- Directory (tenant) ID
- In den Einstellungen für E-Mail-Archivierung folgenden Eigenschaften setzen:
- OAuth2_ClientId = siehe "Overview" -> "Aplication (client) ID"
- OAuth2_Authority = siehe "Overview" -> "Directory (tenant) ID":
https://login.microsoftonline.com/<Dierctory (tenant) ID>/oauth2/v2.0/authorize- OAuth2_Scopes = siehe "API Permissions":
openid
offline_access
https://outlook.office.com/IMAP.AccessAsUser.All- OAuth2_Secret = siehe "Certificates & secrets" -> "Client secrets"
DrDoc.WebServerService.exe als normale Anwendung starten oder 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
Die Pfad-Angaben bitte für folgende Dateitypen zunächst prüfen und bei Bedarf anpassen:
*.da; *.svw; *.tvw; *.ini; *.bvp; *.bxp; *.bvi
Die Server-IP bitte für folgende Dateitypen anpassen:
*.ini; *.bvi; *.da *; .bvc; *.c11; (*.bvc und *.c11 soweit vorhanden)
C:\DRDOC\WEB\BIN\DrDoc.Standard.exe init:<Web-API-KEY> ip:<Neue-IP> port:9995 "env-init:<Pfad zum Verzeichnis der entpackten Archiv-Vorlage>"D:\ARCHIV_ALT, evtl. sichern: ARCHIV.INI, Dr.DOC TMP Verzeichnis (wg. Scan)C:\DRDOC_ALT\webD:\ARCHIV_ALT) -> auf neue Maschine übertragen (z.B. D:\ARCHIV_NEU)C:\DRDOC_ALT\web) -> auf neue Maschine übertragen (z.B. C:\DRDOC_NEU\web)SetupWeb.exe), unter Dr.DOC Web Basisverzeichnis-Pfad von Punkt 3., als Update, keine Neuinstallation, (z.B. unter C:\DRDOC_NEU\web)web\bin\DrDoc.Standard.exe init:<Web-API-KEY> ip:<Neue-IP> port:9995 "env-init:<Pfad zum Archiv-Basis-Verzeichnis>"C:\DRDOC_NEU\web\bin\DrDoc.Standard.exe init:000001asdfgh ip:192.168.100.2 port:9995 "env-init:D:\ARCHIV_NEU"web\bin\DrDoc.Standard.exe init:<Web-API-KEY> "env-init:<Pfad zum Konfigurationsarchiv>"C:\DRDOC_NEU\web\bin\DrDoc.Standard.exe init:000001asdfgh "env-init:C:\DRDOC_NEU\web\config_db"web\configs\server.ini, z.B. C:\DRDOC_NEU\web\configs\server.ini[SERVER], für Key IP neue IP Adresse eintragen, sofern AUTO_IP=false[User..] anpassen, z.B. mit Search and Replace für alte Dr.DOC Archiv-Pfade -> Neue Archiv-Pfade, z.B. Search D:\ARCHIV_ALT\ -> Replace D:\ARCHIV_NEU\C:\DRDOC_ALT\web\ -> Replace C:\DRDOC_NEU\web\web\logs\log.txt, z.B. C:\DRDOC_NEU\web\logs\log.txtDr.DOC enthält alle technischen Voraussetzungen für einen sicheren Betrieb und revisionssichere Archivierung nach gängigen Compliance-Anforderungen.
Wir haben Dr.DOC in den letzten 40 Jahren konsequent nach hochspezifischen Kundenanforderungen (u.a. aus hochregulierten Branchen und Märkten, wie z.B. Luft-/Raumfahrt, Medizintechnik, Pharma) weiterentwickelt, und diese technisch möglichst allgemein implementiert.
Damit haben Dr.DOC Kunden Zugriff auf Best Practices, die nicht nur regulatorische Compliance-Anforderungen erfüllen, sondern haben zusätzlich einen echten Nutzen und Mehrwert, wie z.B. Sicherheit, Qualität, Kontrolle und Nachvollziehbarkeit.
Ziel diese Dokuments ist die allgemeine Dokumentation zur Erreichung optimaler Produktsicherheit, u.a. durch Sicherstellung der Korrektheit (Unversehrtheit) von Daten und der korrekten Funktionsweise vom ECM/DMS System Dr.DOC.
Bei aller Sorgfalt erhebt dieses Dokument keinen Anspruch auf Richtigkeit und Vollständigkeit.
Dieses Dokument hat zusätzlich den Zweck, Dr.DOC Kunden einen geeigneten Rahmen zu geben, bei der Implementierung einer z.B. ISO/IEC 27001, ISO 9001 / DIN EN 9100 / DIN EN 9110, EU 2017/745 MDR, GMP oder EU Vo 748/2012 mit klassischen Aufzeichnungspflichten.
Revisionssicherheit
Revisionssicherheit bezieht sich auf die Aufbewahrung von digitalen Informationen (z.B. Prüfberichte, Rechnungen oder Verträge). Diese muss so erfolgen, dass die rechtlichen Anforderungen in Bezug auf Ordnungsmäßigkeit, Vollständigkeit, Sicherheit, Verfügbarkeit, Nachvollziehbarkeit, Unveränderlichkeit und Zugriffsschutz erfüllt sind.
Beim Thema "Revisionssicherheit" geht um das Sicherstellen (samt Nachweis), dass ein Dokument weder verloren geht noch verändert wird. Das betrifft z.B. den Eingang eines Dokuments in ein Dr.DOC Archiv, bis hin zur endgültigen Langzeitarchivierung/Speicherung.
Eine genaue Definition des Begriffes "Revisionssicherheit" liefert der deutsche Gesetzgeber nicht. Jedoch kann man in Ableitung an das HGB, der AO und den GoBD einige Kriterien und Anforderungen für das Konzept der Revisionssicherheit entnehmen (siehe Kriterien und Anforderungen).
| Kürzel | |
|---|---|
| WF | Workflow |
| KMU | Kleine- und mittlere Unternehmen |
| DMS | Dokumentenmanagement-System |
| API | Programmschnittstelle |
| ISP | Internet Service Provider |
| AO | Abgabenordnung |
| AD | Active Directory |
| GoBD | Grundsätze zur ordnungsmäßigen Führung und Aufbewahrung von Büchern, Aufzeichnungen und Unterlagen in elektronischer Form sowie zum Datenzugriff (ehem. GDPdU und GoBS) |
Zielgruppe:
Dr.DOC ist ein DMS/ESM System primär für Organisationen, z.B. Unternehmen und Behörden.
Komponenten:
Die DMS Komplettlösung Dr.DOC besteht aus den folgenden Produkten und Funktions-Komponenten:
interninterninternEine Dr.DOC Archivumgebung besteht aus:
Sicherheitshinweise:
Sicherung: Alle Dr.DOC Verzeichnisse MÜSSEN regelmäßig, vollständig gesichert werden (Datensicherung/Backup); ggf. zusätzlich verschlüsselt, an einen anderen Standort (z.B. wegen Feuer, Krieg).
Vor einer Reorganisation sollte eine Datensicherung erfolgen, da sich der Zustand bestehender Metainfos und ggf. Dokumente ändern kann (z.B. bei geplanter, vollständigen Dok. Löschung aus dem Container).
Dr.DOC-Berechtigungen: Die Option im Benutzer-Manager -> Benutzer -> Tab "Beschreibung" -> Checkbox "Zugangsberechtigung für Benutzer-Manager" MUSS restriktiv verwendet werden (Admin kann und muss u.a. Rechte ändern und ausweiten können). Wir empfehlen, die Option im Benutzer-Manager -> Menü -> Benutzerverwaltung -> Eingeschaften -> "Automatische Anmeldung mit Netzwerk-Anmeldenamen" auf "Nein, kein Benutzer" zu setzen (deaktivieren). Falls "Benutzerspezifisch" ausgewählt wurde, sollte Benutzer-Manager -> Benutzer: Benutzer wählen -> Tab "Beschreibung" -> Checkbox "Automatische Anmeldung mit Netzwerk-Anmeldenamen" deaktiviert werden, sofern kein AD mit Domaincontroller sicher eingerichtet ist und in Dr.DOC korrekt angebunden wurde (in Benutzer-Datei %appdata%\Dr.DOC\ARCHIV.INI bzw. Vorlage-/Dienst: %programdata%\Dr.DOC\ARCHIV.INI: Wert anfügen [PFAFF_ARCHIV] SECURITY_LOGIN=1, Dr.DOC Dienst als Domänen-User ausführen, mit Impersonation Berechtigung für anzumeldende Benutzer).
Berechtigungen im Dr.DOC Benutzermnager sind additiv. Ein Recht, welches von einer Gruppe gegeben wurde, kann also von einer anderen, gleichwertigen Gruppe nicht genommen werden. Datensatzspezifische Datensatzrechte sind höherwertiger als Standard-Datensatzrechte aus der Archivverbindung. Direkte Benutzerspezifische Rechte sind höherwertiger als Gruppenrechte.
-> Tipp: wir empfehlen grundsätzlich:
%B% für eingetragen WF Bearbeiter); Rechte vererben über Gruppenmitgliedschaften nach Abteilung, Rolle, Funktion.Prüfen und testen Sie die einzelnen Rechte (z.B. Datensatzrechte) der Dr.DOC Benutzer/Gruppen, ob die gemachten Konfigurationsänderungen im Benutzermanager Ihren Anforderungen entsprechen. Bitte beachten Sie, dass eine Änderung von Feldinhaltsspezifischen Datensatzrechten am Server, logischerweise auch die gesetzten/verknüpften Berechtigungen ändert, da dadurch die Bedingung geändert wird, wann/ob ein Recht greift. Feldinhaltsspezifische Feldauswahlen sind aus Sicherheitsgründen nur lokal am Server möglich.
Neue Feldauswahlen sollten grundsätzlich nur vom Dr.DOC Benutzer PUBLIC angelegt/geändert werden. Wenn Sie Feldauswahlen als Dr.DOC Benutzer PUBLIC ändern/anlegen, sind diese Feldauswahlen für alle Dr.DOC Benutzer sichtbar und wirksam (als Vorlage). Ein Dr.DOC Benutzer kann eine benutzerspezifische Feldauswahl (z.B. für Suchvorlage, Sortierung, Auswahlliste) angelegen und damit die Vorlage vom Benutzer PUBLIC für sich überladen.
-> Prüfen Sie regelmäßig:
logs-Verzeichnis auf Fehler und Warnungen.KOMM\Arbeit Verzeichnis.Wechselwirkung mit anderen Produkten:
Virenscanner: Virenscanner können während/nach der Installation wichtige Systemdateien entfernen oder zu archivierende Dokumente aus dem Hotfolder entfernen.
Netzwerk Ports: Netzwerkports werden von Dr.DOC exklusiv gebunden. Bitte achten Sie darauf, einen Port nur von einer App/Dienst zu belegen (und wenn doch, siehe Logs nach Fehlermeldungen).
TOTP oder TLS/X509 Zertifikatefehler: Bitte prüfen Sie die Uhrzeit Ihres Endgeräts und des Dr.DOC Servers. Die Uhrzeit MUSS Synchron sein.
Wechselwirkung mit Betriebssystem:
Betriebssystem: Dr.DOC benötigt ein Microsoft Windows Betriebssystem mit x86 Prozessorarchitektur (32 Bit oder 64 Bit), mindestens Windows 7 oder Windows Server 2012.
Dateisystem: Dr.DOC kann nur ordnungsgemäß funktionieren, wenn ausreichend Speicherplatz auf der Festplatte vorhanden ist. Andernfalls können keine Dokumente archiviert werden. Dr.DOC benötigt keine Dateifreigabe auf der Server Maschine, auf der ein Dr.DOC Server läuft. Der Hotfolder Import lässt sich auf einem anderen Gerät realisieren (pull).
Das Dr.DOC System-Verzeichnis (z.B. C:\DrDOC\SYSTEM) darf für Clients NICHT beschreibbar/veränderbar sein; also höchstens Read-Only lesbar sein, wenn ein "geteiltes System-Verzeichnis" gewünscht ist. Alle Dr.DOC Archiv-Verzeichnisse und alle anderen Dr.DOC Verzeichnisse auf dem Server MÜSSEN geschützt werden und dürfen für den Client NICHT zugreifbar sein.
Auch kann Dr.DOC nur so sicher sein, wie das System/Plattform/Betriebssystem/VM, auf der Dr.DOC läuft.
Kommunikation: Alle Dr.DOC Produkte kommunizieren zwischen Client und Server über TCP/IP Sockets. Dr.DOC Produkte kommunizieren untereinander über Mutex, Dateien und Netzwerk Sockets. Alle anderen Netzwerk-Ports und Dienste werden von Dr.DOC nicht direkt benötigt. Bis auf die von Dr.DOC verwendeten, gebundenen TCP/IP Ports kann aus Dr.DOC Sicht ein großteil aller Dienste und Port deaktiviert/geschlossen werden.
Dr.DOC benötigt grundsätzlich keine Windows Server CALs für Dr.DOC Benutzer; Windows CALs sind nur im Terminal-Betrieb notwendig.
Benutzerrechte und Dienste am Server: bitte beachten Sie, dass ein Dr.DOC Dienst nur Dateien von (Netz-)Laufwerken laden/importieren kann, auf die der Benutzer Zugriffsrechte hat (z.B. Dienst auführen als User ..). Der Dr.DOC Netzwerk Server Import (Hot-Folder) unterstützt UNC-Pfade. Bitte prüfen Sie im Fehlerfall zuerst (z.B. kein Import stattgefunden), ob der Import mit lokalen Pfaden ordnungsgemäß funktioniert.
Die für den Dr.DOC Netzwerk Server und Dr.DOC Web verwendete Dr.DOC Konfigurationsdatei ARCHIV.INI hängt am ausführenden Benutzer des Prozesses. Das ist bei Windows Diensten und Terminal-Servern i.d.R. %programdata%\Dr.DOC\ARCHIV.INI und bei normalen Windows Benutzern %appdata%\Dr.DOC\ARCHIV.INI. Kritische Einstellungen sollten in beide ARCHIV.INIs eingetragen werden.
Lizenz und Version:
Ihre Produktversion und Lizenz erkennen Sie unter:
Mehr:
Siehe Benutzerhandbuch in Ihrer Dr.DOC Installation (Handbuch\D).
Konformitätserklärung:
Hiermit erklären wir als Hersteller, dass das Produkt "Dr.DOC Netzwerk Client/Server" (z.B. Dr.DOC N50 Lizenz) und "Dr.DOC Web" der GPSR (EU) 2023/988 entspricht.
München, 11.04.2025
Hersteller:
Dr.DOC GmbH
Geschäftsführung / Tobias Pfaff
Hesseloherstr. 9
D-80802 München
Email: info[at]drdoc.com
Intern: Siehe Dr.DOC Versionsverwaltung Sperr- / Freigabehistorie.
Beipiel:
| Datum | Änderung | Autor |
|---|---|---|
| ... |
Bitte entsprechend anpassen!
| Asset-Type | Kategorie / Asset Name | Asset Owner: Abteilung |
Asset Owner: Rechte |
Schutzbedarf | Sicherheit / Klassifizierung |
Ort / Lage |
Medium / Form |
|---|---|---|---|---|---|---|---|
| Mensch / Persoal | Rolle(n): Rechte und Pflichten Fähigkeiten
|
HR | hoch | vertraulich | .. | .. | |
| Dokumentation und Organisatorische Abläufe | Orgahandbuch | VE | read, write | .. | intern | Papier | |
| Hardware und HMI | TSP / ISP: Telekom | IT | |||||
Router
|
IT | ||||||
Switch
|
IT | ||||||
| E-Mail-Server | IT | ||||||
Server
|
IT | Schrank 2 | |||||
| OS, Betriebssystem | MS Server 2025 | IT | intern | VM1 / Hostname server1 |
|||
| Apps, Software, Services und Systeme | Software Dr.DOC Usermanager Beispiel Archive mit Feldern, Eigenschaften, FAs DS mit Feldwerten und Dokument |
IT | hoch | intern |
|
digital / VM Image | |
| Dr.DOC Archiv Personalakten/Arbeitsverträge | HR | Datensatz: read, write Dokument: read, append |
hoch | vertraulich | digital / Archiv | ||
| Dr.DOC Archiv für Eingangsrechnungen + LS |
Einkauf | Datensatz: read, write Dokument: read, append |
hoch | intern | digital / Archiv |
Ein Ablauf definiert z.B. Zustandsänderungen von Assets.
| Bezeichnung | Initiierendes Asset | Betroffene Assets | Zustandsänderung |
|---|---|---|---|
| Posteingang: Vorqualifizierung | Posteingang User |
|
Erzeugen mehrerer Stapel, Trennung nach Kontext, Verschieben in E-Mail Verzeichnisse
|
| Erfassung als digitalen Repräsentation (z.B. Scan) | Posteingang User |
|
|
| Automatische Verschlagwortung je nach Archiv / Feldvorbelegung / Import-Def. | Dr.DOC |
|
Feldwerte erkennen und ändern mittels:
|
| Ablage des Originals | Posteingang User |
|
|
| Verschlagwortung / WF Bearbieter setzen | Posteingang User |
|
Setzen bzw. Überprüfen der von vorausgefüllten Feldwerten:
|
| WF Schritte: z.B. Freigabe Sachbearbeiter/Besteller, Freigabe Buchung, Freigabe Zahlung | Freigabe User |
|
|
| Sperrung | Sperr/AL User |
|
Im Dr.DOC Datensatz das Dokument sperren, z.B. wenn alle WF erledigt wurden oder über ein Checkbox Bool Feld, mit Datensatzspezifischer Berechtigung |
| Recherche | Mandanten User |
|
Keine Änderung |
Löschung:
|
Lösch User |
|
Sofern Sie KI Funktionen nutzen, muss ggf. der AI-Act der EU erfüllt werden. Dafür sollte in einem ersten Schritt das Risikopotenzial durch KI Verwendung ermittelt werden. i.d.R. haben Dr.DOC Anwendungen/Implementierungen ein "Minimales Risiko" bis "Begrenztes Risiko" ohne "systemisches Risiko" nach EU AI Act.
Dabei gilt: je höher das Risiko, desto strenger die Anforderungen.
Bitte entsprechend anpassen!
Schadensbetrag:
| Schadensbetrag bzw. Schadensausmaß in EUR | Bewertung |
|---|---|
| < 10 Tsd. | sehr sehr gering |
| >= 10 Tsd. | sehr gering |
| >= 10 Mio. | gering |
| >= 25 Mio. | mittel |
| > 50 Mio. | hoch |
Eintrittswahrscheinlichkeit:
| Eintrittswahrscheinlichkeit in % | Bewertung |
|---|---|
| < 5 % | sehr unwahrscheinlich |
| 5% - < 25% | unwahrscheinlich |
| 25% - < 50% | möglich |
| 50% - 75% | wahrscheinlich |
| > 75% | sehr wahrscheinlich |
Risikoklassen:
Definition: Auswirkungen auf die Vermögens-, Finanz- und Ertragslage von [...].
| Ereignis | Schadenspotential | Eintrittswahrscheinlichkeit | Schadensbetrag | Aktionen / Vermeidungsmaßnahme | Inhärente, technische Schutzmaßnahmen | Risiko nach Mitigierung |
|---|---|---|---|---|---|---|
| Datei/Festplatte Schreibfehler | kein bis vollständiger Datenverlust | sehr unwahrscheinlich | sehr gering |
|
|
sehr sehr gering |
| Festplatte voll | Störung des ordnungsgemäßen Betriebs / keine Änderungen möglich / Beendigung des Dienstes | möglich | mittel |
|
|
sehr sehr gering |
| Unbefugtes, Direktes Bearbeiten von Dateien am Server | Störung des ordnungsgemäßen Betriebs, Datenzerstörung oder Manipulation | unwahrscheinlich | sehr hoch |
|
|
sehr sehr gering |
| MITM / Abhören der Kommunikation | Anmeldung als Benutzer(je nach Nutzerrecht), Rechteausweitung | möglich | hoch |
|
|
sehr sehr gering |
| Passwort Bruteforce Angriff | Anmeldung als Benutzer, Datensätze zum Löschen markieren, Metadaten bearbeiten etc. (je nach Nutzerrecht), Rechteausweitung | möglich | hoch |
|
|
sehr sehr gering |
| Rechteausweitung | Anmeldung als Benutzer (je nach Nutzerrecht) | möglich | hoch |
|
|
sehr sehr gering |
| Schadhafte/Virus Datei wird archiviert | Word *.doc mit schadhaftem Makro | wahrscheinlich | hoch |
|
|
sehr sehr gering |
| DDOS Angriff | Kein Netzwerkzugriff für Nutzer möglich | möglich | mittel |
|
sehr sehr gering | |
| Krieg, Feuer, Wasserschaden | Störung des ordnungsgemäßen Betriebs, Datenzerstörung | möglich | hoch |
|
|
sehr sehr gering |
| Löschen vor Ablauf der Aufbewahrungsfrist | möglich | hoch |
|
|
sehr sehr gering | |
| Fehler bei Einhaltung der Aufbewahrungsfristen | möglich | mittel |
|
|
sehr sehr gering | |
| Dokument oder Metainfo wird geändert | möglich | mittel |
|
|
sehr sehr gering | |
| Rechnung wird falsch gebucht flasche Vorbelegung durch KI |
möglich | hoch |
|
|
sehr sehr gering | |
| Falsche Antwort/Information im Chat durch KI | wahrscheinlich | hoch |
|
|
gering | |
| Dokument wurde nicht archiviert | möglich | mittel |
|
|
sehr sehr gering | |
| Dokument wurde mehrfach archiviert | möglich | mittel |
|
|
sehr sehr gering | |
| Dokument/Metanfo wird nicht/falsch/unvollständig gespeichert | sehr unwahrscheinlich | hoch |
|
sehr sehr gering | ||
| Ein Benutzer hat einen Datensatz bearbeitet/gesehen/gesucht/geändert | sehr wahrscheinlich | gering |
|
|
sehr sehr gering | |
| Ein Benutzer hat einen Datensatz unbefugt bearbeitet/gesehen/gesucht/geändert wg. Fehlkonfiguration | unwahrscheinlich | hoch |
|
|
sehr gering |
Document Encoder dienen dem Mapping zwischen Dokument zu Metadaten (teils bidirektional) sowie der Verarbeitung der eingebetteten Dokumente (rekursive Archivierung).
Der primäre Zweck der rekursiven Archivierung ist das strukturierte Auslesen (Dokument zu Metadaten) mit deren eingebetteten Inhalten (z.B. E-Mail-Anhänge) durch regelbasierte Archivierung.
Ausgelöst wird die rekursive Archivierung beim Import bzw. durch eine API beim Export. Ob eine rekursive Archivierungsregel/Document Encoder ausgeführt wird, entscheidet der Selector.
Dabei können unterschiedliche Merkmale verwendet werden, z.B. Datei Typ/Extension, Archiv Name, Dateiname, Feldauswahl(en) mit UND/ODER verkettet.
Jedes Dateiformat/Dokument Typ hat bestimmte logische Funktions Felder, die über eine Dr.DOC Feldauswahl „gemappt“ werden. z.B. für E-Mails: E-Mail Absender zu Dr.DOC Feld "EmailFromAddr".
I.d.R. ist das Mapping unidirektional, vom Dokument zur strukturierten Metainfo.
Für einige Dateiformate ist es möglich, diesen Vorgang umzukehren (Metadaten zu Dokument) und aus den Metadaten wieder ein Dokument zu generieren (derzeit nur Termine, Aufgaben, Kontakte, CSV). Das findet Verwendung bei der Nutzung von CalDAV und CardDAV sowie dem Export.
Ein vollständig bidirektionales Mapping ist nur möglich, wenn die Metadaten Struktur des Archivs jedes Dokument des Typs vollständig und ohne Informationsverlust repräsentieren/abbilden kann.
Der Name der Dr.DOC Standard-Feldauswahl hat grundsätzlich das Präfix „DD_“ und in ist i.d.R. vom Dr.DOC Feldauswahl Typ Import Ascii.
Beispielhafter Anwendungfall wären Kontakte mit DD_CONTACT oder E-Mails mit DD_EMAIL. In einem allgemeinen Schriftgutarchiv müsste man unterscheiden. z.B. Ist es der Dokument-Typ Brief oder Lieferschein? Ist die E-Mail Eingehend oder ausgehend?.
Die Definition einer Standard-Feldauswahl ist nur sinnvoll, wenn das Mapping im Archiv invariant zum jeweiligen Dokument des entsprechenden Typs ist, kann aber dennoch als Fallback für das Mapping des Prototypes (wenn kein eigens angelegter Document Encoder explizit greift) sinnvoll sein.
Es können Fixwerte in Double Quotes "Fixwert" eingetragen werden, z.B. als Suffix oder Präfix, z.B. "From: " FROM_ADDRESS
Die Mapping Eigenschaften werden von den Fixwerten durch (Blank) betrennt.
" werden als \" escaped, also z.B. "Hallo \"Welt\""
Es gibt die Möglichkeit, Fixwerte in Tabellenzeilen zu positionieren, mit einem : nach der Mapping Eigenschaft Syntax:
PROP: "Fixwert"
Das ist nützlich, wenn eine Tabelle mit mehrere Spalten hat.
Beispiel: In die Tabellenzeile, in die die Absender E-Mail-Adresse eingetragen wird (Feld EmailAddress), "From:" in Feld EmailType eintragen
EmailType: FROM_ADDRESS: "From:"
EmailAddress: FROM_ADDRESS
Diese Funktion ist sinnvoll für "zusammengesetzte" und "verschachtelte" Dateiformate (z.B. E-Mails, Zip, ZUGeRD). D.h. bei Dokument Typen, die eingebettete Dokumente haben können.
Die Funktionen der rekursiven Archivierung kann z.B. mit der E-Mail-Archivierung kombiniert werden.
Über die rekursiven Archivierungs Regeln können spezielle Definitionen erstellt und verkettet werden.
Beispiel: Aus einer E-Mail wird eine eine ZIP-Datei gelesen, daraus soll ein PDF Dokument archiviert werden, aber die Metadaten sollen aus der Embedded XML aus der PDF-Datei geholt werden.
Oder: archiviere nur die PDFs aus einer E-Mail, wobei die Anhänge nicht mit „AGB“ beginnen dürfen und falls darin eine ZUGeRD XML enthalten ist, übertrage die Rechnungsinformationen in die Metainfo.
Alle Document Encoder, die mit
STD_beginnen, werden bei jedem Update/Upgrade von Dr.DOC Web automatisch vollständig überschrieben. Wenn Sie einen Standard Document Encoder nutzen wollen, kopieren oder überlanden Sie diesen (Prototype).
Alle Document Encoder, die mitDEFAULT_beginnen, werden bei jedem Update/Upgrade von Dr.DOC Web automatisch angelegt, jedoch nie überschrieben.
Sie sollten daher keine eigenen Document Encoder anlegen, die mit folgendem Namen beginnen:STD_,DEFAULT_
| Dokumenten-Format | Extensions | Mapping | Rekursiv? |
|---|---|---|---|
| PDF Dokument | *.pdf, *.tiff, *.tif | Verschlagwortung via KI oder Regex Autofelder. OCR Text über Archivspezifische INI im FORM-Verzeichnis: [PDF_TEXT] Fieldname=<OCR-Feldname> |
Embedded Files archivieren; z.B. Xrechnung.xml oder zugferd xml rekursiv archivieren |
| *.eml, *.msg | Default Feldauswahl ASCII-Import-Definition „DD_EMAIL“:
"Fixwert" eingetragen werden, z.B. als Suffix oder Präfix, z.B. "From: " FROM_ADDRESS |
Anhänge und Termine | |
| XML | *.xml | Default Feldauswahl ASCII-Import-Definition „DD_XML“:Je Feld ein XPath Der XPath darf von einem Prefix und Suffix umgeben sein. z.B. Document/Rabatt "%"z.B. mit Optionalem Prefix, wenn kein Wert gefunden wurde: Property1/SubProperty2 "1"?z.B. für mehrere alternative Pfade mit Property1/SubProperty2\ PropertyX/SubProperty2 "1"? |
|
| CSV | *.csv | Default Feldauswahl ASCII-Import-Definition „DD_CSV“: |
Zeilen als neuen Datensatz |
| JSON | *.json | Default Feldauswahl ASCII-Import-Definition „DD_JSON“:Syntax für Wert einer Property: Property1/SubProperty2z.B. mit Prefix: Property1/SubProperty2 "%"z.B. mit Optionalem Prefix, wenn kein Wert gefunden wurde: Property1/SubProperty2 "1"?z.B. für mehrere alternative Pfade mit "\ "Property1/SubProperty2\>PropertyX/SubProperty2 "1"?Beispiel JSON: { Property1: { SubProperty2: "value" } }Syntax für die Property von Array Elementen: Property1/\*/SubProperty3Beispiel JSON: { Property1: [ { SubProperty2: "value 1" }, { SubProperty2: "value 2" }, ] } |
|
| JPEG | *.jpg, *.jpeg | Feldauswahl ASCII-Import-Definition „DD_JPG“:
|
|
| ZIP | *.zip | Alle Dateien / Entries | |
| Termine iCal Ausgabe, Notiz, Journal, Termin |
*.ics | Feldauswahl "Kalender-Terminfelder"-Definition „DD_EVENT“ für Termine,Feldauswahl "Kalender-Aufgabenfelder"-Definition „ DD_TASK“ für Aufgaben,Feldauswahl "Kalender-Terminfelder"-Definition „ DD_NOTE“ für Notizen/Journal:
|
|
| Kontakte V-Card | *.vcf | Feldauswahl ASCII-Import-Definition „DD_CONTACT“:
|
Um die Archivierung regelbasiert zu steuern, werden folgende Einstellungen im Dr.DOC Web Konfigurationsarchiv „node“ ausgelesen:
Type: ConfigWebNode
Name: config/recursive
Name: config/recursive/<Rule-Name>
Eine Vererbung über den Prototype-Namen ist möglich. Wenn Property Values aus dem Prototype geladen werden sollen, muss das „Inherit“ Flag in der Property gesetzt sein oder die Property nicht angegeben werden.
Alle Properties haben i.d.R. den Type ConfigWebNode.
Rekursive Archivierungsregeln sind Instanzen des jeweiligen Document Encoders/Decoders.
Die Rekursiven Archivierungsregeln (Document Encoder/Decoder Instanz) beziehen sich immer auf einen bestimmten Datei/Dokument-Typ (Document Encoder/Decoder), der über die Property Proto_Extension oder Proto_Type gesteuert werden kann.
Der Document Encoder/Decoder definiert, wie Felder grundsätzlich "gemappt" werden sollen (eine E-Mail hat einen Betreff und ein PDF Dokument OCR Text).
Die Document Encoder/Decoder Instanzen definieren, wann welches Dokument wie archiviert werden soll. Die Steuerung erfolgt durch Feldauswahlen (z.B. Suchvorlage oder Feldvorbelegung) und Dateinamen (z.B. Extension).
Sollte beim Archivieren keine passende Document Encoder/Decoder Instanz gefunden werden, wird der entsprechende Document Encoder/Decoder Prototyp gewählt.
Rekursion:
Eine Document Encoder/Decoder Instanz kann über die Property Recursive weitere Document Encoder/Decoder Instanzen definieren. Sollte ein Dokument weitere Dokumente "embedded" haben (z.B. Anhänge in einer E-Mail, Embedded XML in einer PDF, Dateien in einer ZIP), werden diese Dokumente durchlaufen, mit den in der Property Recursive angegebenen Document Encoder/Decoder Instanzen.
Über die Property Action kann die Verarbeitung von Dokument und Meta-Info gesteuert werden.
Aus Sicherheitsgründen sollte der Datensatz nur für den Server und berechtigte Administratoren zugreifbar sein, indem das Feld "User" auf den Wert "System-Group" gesetzt wird (Standardeinstellung).
über die Document Encoder Properties lässt sich das Verhalten eines Document Encoders einstellen.
| Property Type | Property Name | Beschreibung | Mögliche Werte |
|---|---|---|---|
| BoolWebNode | Enabled | Gibt an, ob die Regel aktiv ist. Wenn nichts angegegeben ist, wird der Wert "true" angenommen. | true, false |
| ConfigWebNode | Proto_Type | Document-Encoder/Decoder Typ Derzeit unbenutzt. |
|
| ConfigWebNode | Proto_Extension | z.B. "*.eml|*.msg“ Wählt den Document-Encoder/Decoder über die File-Extension des zu archivierenden Dokuments. | |
| ConfigWebNode | Selector_UsermanagerName | Usermanager-Name oder voller Pfad zur BVD Datei | |
| ConfigWebNode | Selector_ArchiveName | Archiv-Name oder voller Pfad zur KOMM\SERVER\*.da Datei | |
| ConfigWebNode | Selector_Filename | Regel für Dateiname (z.B. *.eml|*.msg) | |
| ConfigWebNode | Selector_FieldSelectionNames | Pro Zeile ein Wert.Name der Feldauswahl(en), mit der das Dokument verglichen werden soll. | |
| BoolWebNode | Selector_FieldSelectionAND | - „true“: gibt an, dass alle Selector_FieldSelectionNames „wahr“ sein müssen - „false“: es genügt, wenn nur eine „wahr“ ist |
true, false |
| ConfigWebNode | Selector_FieldSelectionCaseSensitive | - „true“: beim Vergleich Groß-/Kleinschreibung beachten - „false“: Groß-/Kleinschreibung ignorieren |
true, false |
| ConfigWebNode | Selector_FieldSelectionType | Feldauswahl-Typ festlegen | IMPORT_ASCII, EXPORT_ASCII, FIELDCONTENT, CAL_APPOINTMENT, CAL_TASK, PRESET, SEARCHTEMPLATE |
| BoolWebNode | Selector_FieldSelectionGetMetaFromDoc | Default: false Sollte nur "true" sein, wenn eine Feldauswahl angegeben wurde und sich der Wert der Meta-Info für die Feldauswahl-Prüfung Selector_FieldSelectionNames, aus dem Inhalt des Dokuments ableitet (Document Encoder). Es wird dieser Document Encoder zum Laden der Metas-Info aus dem Dokument verwendet, mittels MapFieldSelectionName und MapFieldSelectionType. |
true, false |
| BoolWebNode | Selector_EmptyMetaInfoAllowed | Default: true Gibt an, ob es ein Positiver Selector ist, wenn eine Meta-Info/Profildaten leer ist und Selector_FieldSelectionNames definiert sind. |
true, false |
| ConfigWebNode | Action | Ab V114 / 28.08.2025 Die Property " Action" wird bei der Archivierung angewendet, besonders relevant bei rekursiver Archivierung; also wenn "Recursive" vom Aufrufer definiert wurde.Damit kann die Verarbeitung von Dokument und Meta-Info gesteuert werden, bei einer mehrstufigen Verarbeitung. -> Skip: überspringen: Meta-Info und Dokument ignorieren. Es werden nur Document Encoder unter "Recursive" verarbeitet. Beispiel: E-Mail ignorieren aber Anhänge archivieren.-> CreateDocument: Neues Dokument erstellen, mit neuer Meta-Info. Falls dieser Document Encoder ein Recursive Document Encoder ist, kann der Aufrufer mit Recursive_SkipAndAppendOCR: true diesen Document Encoder im Document Encoder Result auf Action: Skip setzen.--- Migration auf V114 Alle Actions mit Merge oder None erhalten mit der Migration auf V114 automatisch die Action Skip, sowie, falls alle Recursive Document Enocder die Action Skip haben, Recursive_MapFields mit *, Recursive_MapFieldsReverse mit *, Recursive_SkipAndAppendOCR mit true, für das Mapping/Merge aller Feldwerte.-- Migration von V110 -> V111 Alle Actions mit CreateDocumentMerge erhalten mit der Migration auf V111 automatisch die Action CreateDocument und Recursive_MapFields mit *, für das Mapping/Merge aller Feldwerte.--- Bis V110 / 22.08.2025 Die Property " Action" wird nur angewendet, bei rekursiver Archivierung; also wenn "Recursive" vom Aufrufer definiert wurde.Damit kann die Verarbeitung von Dokument und Meta-Info gesteuert werden. -> Skip: überspringen: Meta-Info und Dokument ignorieren. Document Encoder unter "Recursive" verden verarbeitet. Beispiel: E-Mail ignorieren aber Anhänge archivieren.-> None: kein neues Dokument erstellen und Meta-Info/Profildaten in den aufrufenden Datensatz laden, aus der Meta-Info aus diesem Dokument (je nach Document Encoder). Es wird das erste Dokument in der Kette der Document Encoder erstellt, wenn alle rekursiven Document Encoder die Action None haben.-> CreateDocument: Neues Dokument erstellen, mit neuer Meta-Info.-> CreateDocumentMerge: Nur angewendet, wenn der Aufrufer (rekursiv) das gleiche Archiv hat. Neues Dokument erstellen, aber Meta-Info/Profildaten vom Aufrufer übernehmen. Dateinamen Autofleder F und FO sowie Dateinamen Variablen (aus Feldvorbelegung) %F% und %FO% werden zurückgesetzt, damit der Dateiname des rekursiven Dokuments verwendet wird. Z.B. um für einen E-Mail-Anhang (dieser), die Abesender E-Mail-Adresse aus der E-Mail-Nachricht (Aufrufer) zu übernehmen. |
Skip, CreateDocument |
| ConfigWebNode | Action_FieldPreselectionName | Name der Feldvorbelegung für das Erstellen neuer Dokumente/Datensätze. Es können mehrere Meta-Infos angegeben werden zur Kombination. Es werden keine Feldwerte überschrieben (siehe Action_FieldPreselectionOverwrite). |
|
| ConfigWebNode | Action_FieldPreselectionOverwrite | Default: false Gibt an, ob die Feldauswahl für Feldvorbelegung Feldwerte überschreiben kann. |
true, false |
| ConfigWebNode | MapFieldSelectionName | Name der Mapping-Feldauswahl | |
| ConfigWebNode | MapFieldSelectionType | Typ der Mapping Feldauswahl | IMPORT_ASCII, EXPORT_ASCII, FIELDCONTENT, CAL_APPOINTMENT, CAL_TASK, PRESET, SEARCHTEMPLATE |
| ConfigWebNode | Recursive | Pro Zeile ein Wert.Name(n) der Rekursiven Archivierungs-Einstellung(en) die für Anhänge dieses Dokuments durchlaufen werden sollen.z.B. "config/recursive/RE PDF CreateDocument". | |
| ConfigWebNode | Recursive_ExecuteAll | Default: false Alle rekursiven Document Encoder ausführen, welche die Kriterien erfüllen (Enabled, Selected_ etc.). Also NICHT beim ersten erfolgreichen Document Encoder abbrechen. |
true, false |
| ConfigWebNode | Recursive_ExecuteDefault | Default: false Nachdem alle recursiven Document Encoder aus der Property Recursive durchlaufen wurden, ggf. zusätzlich die default/Standard/Prototype Document Encoder ausführen (z.B. DD_EMAIL, DD_TASK, DD_CONTACT, DD_XML, DD_JSON etc.) |
true, false |
| ConfigWebNode | Recursive_SkipAndAppendOCR | Default: false Für Datenübergabe vom Recursive Document Encoder an diesen Document Encoder (Aufrufer): Action des Recursive Recursive Document Encoder Result auf "Skip" setzen, und Feldwerte wie in "Recursive_MapFieldsReverse" angegeben übernehmen, und OCR Text übernehmen. |
true, false |
| ConfigWebNode | Recursive_MapFields | Ab V111 / 22.08.2025 Felder Mappen / Mergen zwischen diesen und dem recursive Document Encoder. Ein Mapping zwischen verschiedenen Archiven ist möglich.
F und FO sowie Dateinamen Variablen (aus Feldvorbelegung) %F% und %FO% werden zurückgesetzt, damit der Dateiname des rekursiven Dokuments verwendet wird. Z.B. um für einen E-Mail-Anhang (dieser), die Absender E-Mail-Adresse aus der E-Mail-Nachricht (Aufrufer) zu übernehmen oder die E-Mail-Message-ID als logische Klammer. |
* odersourceFieldName2=>TargetFieldName2 |
| ConfigWebNode | Recursive_MapFieldsReverse | Ab V114 / 28.08.2025 Wie Recursive_MapFields, nur in die andere Richtung, vom Recursive Document Encoder zum Aufrufer.Wir in Kombination mit Action: Skip verwendet, um die Meta Info vom Recursive Document Encoder zu übernehmen. z.B. aus ZUGFeRD PDF (Action: CreateDocument, Recursive_SkipAndAppendOCR: true) die Metadaten aus der embedded XML übernehmen. |
|
| ConfigWebNode | Recursive_ExecuteMagicAI | Default: false Als Recursive Document Encoder die magische Archivierung ausführen. Die KI wählt selbstständig den passenden Document Encoder. z.B. Wenn man für eine E-Mail (*.eml) Recursive_ExecuteMagicAI mit true setzt, dann kann die KI für den E-Mail-Anhang den passenden Document Encoder wählen (z.B. eine Rechnung). |
true, false |
| ConfigWebNode | Recursive_FilenameWhitelist | Bei rekursiver Archivierung: nur Dateinamen verarbeiten, die den angegebenen Regeln entsprechen, z.B. !*.png&!*.ico&!*AGB*&!*Datenschutz*Wir nur aktiv, wenn ein Wert gesetzt ist. |
|
| ConfigWebNode | Recursive_FilenameDuplicateWhitelist | Bei rekursiver Archivierung: Wenn ein Dateiname bei der rekursiven Archivierung mehrfach vorkommt (z.B. Anhänge einer E-Mail mit .pdf und .xml), Sollen nur Dateinamen nach den angegebenen Regelen akzeptiert werden (z.B. *.xml). Derzeit nur für E-Mails implementiert. z.B. In E-Mail nur E-Rechnungen verarbeiten und PDF ignorieren, falls der Dateiname gleich ist.Wir nur aktiv, wenn ein Wert gesetzt ist. |
|
| ConfigWebNode | AI_Enabled | Default: false Ollama AI aktivieren zur automatischen KI Verschlagwortung. Für den Document Enocer config/recursive/DEFAULT_AI aktiviert der Wert true den KI Chat sowie die magische Archivierung. |
true, false |
| ConfigWebNode | AI_OllamaEndpoint | Ollama Endpoint | true, false |
| ConfigWebNode | AI_OllamaModel | Ollama Model | |
| ConfigWebNode | AI_MaxPagesCount | Default: -1 "-1" für alle Seiten. Maximale Anzahl zu verarbeitende Seiten begrenzen. |
-1, 1-N |
| ConfigWebNode | AI_DocumentLabel | Kurze Dokument Bezeichnung. Pflichtfeld für "magische Archivierung". Anhand dieses Textes wählt die "magische Archivierung" den Document Encoder via KI aus. Wenn kein Text angelegt ist, kann der Document Encoder auch nicht im Rahmen der "magischen Archivierung" ausgewählt werden. https://drdoc.com/node/de/products/web/doku/ai-kuenstliche-intelligenz |
|
| ConfigWebNode | AI_DocumentDescription | Kurze Dokument Beschreibung. Optional: Anhand dieses Textes wählt die "magische Archivierung" den Document Encoder via KI aus. |
|
| ConfigWebNode | AI_ExecuteBeforeRecursive | Default: true AI vor den Recursive Document Encoders ausführen. z.B. auf "false" setzen, wenn für eine auf eine ZUGFeRD Rechnung, wg. der im PDF eingebetteten strukturierten XML, keine KI Verschlagwortung notwendig ist. |
true, false |
| ConfigWebNode | AI_ExecuteAfterRecursiveSuccess | Default: false Wird nur relevant/aktiv, wenn AI_ExecuteBeforeRecursive=false. Soll die AI selbst dann ausgeführt werden, wenn bereits ein recursive Document Encoder ausgeführt wurde? AI nur ausführen, wenn AI noch nicht ausgeführt wurde und mindestens ein Recursive Document Encoder erfolgreich ausgeführt wurde. z.B. nützlich, wenn eine auf eine PDF ZUGFeRD Rechnung wg. der strukturierten eingebetteten XML keine KI Verschlagwortung auf Ebene des PDFs notwendig ist. Ein Fallback, wenn die Metadaten durch die Rekursiven Document Encoder nicht immer gefüllt werden. (z.B. bei ZUFeRD Rechnung: PDF -> XML) |
true, false |
| ConfigWebNode | AI_MapFieldSelectionName | Default: DD_FIELD_DESC Bezeichner für Feldauswahl vom Typ IMPORT_ASCII. Enthält AI Mapping Feld Beschreibungen in Textform, um dem KI Modell die Dr.DOC Felder zu beschreiben. |
|
| ConfigWebNode | AI_OverwriteMetaInfo | Default: false AI kann Profildaten überschreiben. |
true, false |
| ConfigWebNode | AI_ImageVisionOCR | Default: false OCR über AI/KI Vision Modell ausführen. |
true, false |
| ConfigWebNode | Log | Default: true Grund/Ursache loggen, warum ein Document Encoder nicht gewählt wurde. |
true, false |
Daraus ergibt sich z.B. folgender Tree and Document Encodern:
Dr.Doc.Standard.exe init:<API-KEY> ip:<IP-Adresse> port:<Port> env-init:<Archivumgebung-Basis-Verzeichnis>
Beispiel:
Dr.Doc.Standard.exe init:00001fjkdh ip:192.178.178.2 port:9995 env-init:D:\ARCHIV
Dr.Doc.Standard.exe init:<API-KEY> bvd:<BVD-Pfad> "signin:<Username>:<Password>" rename-archive:<Old-Archive-Name>,<New-Archive-Name>
Beispiel:
Dr.Doc.Standard.exe init:00001fjkdh "bvd:%TARGET_DIR%\USER\user.bvd" "signin:PUBLIC:Gast" rename-archive:docs,doc
Dr.Doc.Standard.exe init:<API-KEY> bvd:<BVD-Pfad> "signin:<Username>:<Password>" reo-archive:<Archive-Name>
Beispiel:
Dr.Doc.Standard.exe init:00001fjkdh "bvd:%TARGET_DIR%\USER\user.bvd" "signin:PUBLIC:Gast" reo-archive:doc
Dr.Doc.Standard.exe init:<API-KEY> bvd:<BVD-Pfad> "signin:<Username>:<Password>" reo-archive:*
Beispiel:
Dr.Doc.Standard.exe init:00001fjkdh "bvd:%TARGET_DIR%\USER\user.bvd" "signin:PUBLIC:Gast" reo-archive:*
Dabei werden alle Daten und Dokumente gelöscht!
Dr.Doc.Standard.exe init:<API-KEY> bvd:<BVD-Pfad> "signin:<Username>:<Password>" reset-archive:<Archive-Name>
Beispiel:
Dr.Doc.Standard.exe init:00001fjkdh "bvd:%TARGET_DIR%\USER\user.bvd" "signin:PUBLIC:Gast" reset-archive:doc
Dabei werden alle Daten und Dokumente gelöscht!
Dr.Doc.Standard.exe init:<API-KEY> bvd:<BVD-Pfad> "signin:<Username>:<Password>" reset-archive:*
Beispiel:
Dr.Doc.Standard.exe init:00001fjkdh "bvd:%TARGET_DIR%\USER\user.bvd" "signin:PUBLIC:Gast" reset-archive:*
Dr.Doc.Standard.exe init:<API-KEY> bvd:<BVD-Pfad> "signin:<Username>:<Password>" set-user-password:<Username>:<Password>
Beispiel:
Dr.Doc.Standard.exe init:00001fjkdh "bvd:%TARGET_DIR%\USER\user.bvd" "signin:PUBLIC:Gast" set-user-password:hans.mueller:1234
Dr.Doc.Standard.exe init:<API-KEY> bvd:<BVD-Pfad> "signin:<Username>:<Password>" delete-user:<Username>
Beispiel:
Dr.Doc.Standard.exe init:00001fjkdh "bvd:%TARGET_DIR%\USER\user.bvd" "signin:PUBLIC:Gast" delete-user:hans.mueller
Dr.Doc.Standard.exe init:<API-KEY> bvd:<BVD-Pfad> "signin:<Username>:<Password>" delete-group:<Username>
Beispiel:
Dr.Doc.Standard.exe init:00001fjkdh "bvd:%TARGET_DIR%\USER\user.bvd" "signin:PUBLIC:Gast" delete-group:hans.mueller
Es gibt grundsätzlich drei Möglichkeiten, für Dr.DOC Web ein TLS x509 Zertifikat für die Verbindungsverschlüsselung zu installieren.
443 MUSS am Server für Dr.DOC Web verfügbar sein443 und TCP Port 80, mit Verweis auf den Server, aktiv sein
Dr.DOC Web Server Dienst beenden
sc.exe stop "Dr.DOC Web Server"
Öffnen Sie in Ihrem Dr.DOC Web Basisverzeichnis im Unterverzeichnis "configs" die Datei "server.ini"
Pfad: <Web-Basisverzeichnis>\configs\server.ini
z.B. C:\DrDOC\WEB\configs\server.ini
Bitte passen Sie folgende Einträge an:
[SERVER]
HOSTNAME=<Ihr Hostname>
PORT=443
SSL_ACTIVE=true
Dr.DOC Web Server Dienst starten
sc.exe start "Dr.DOC Web Server"
Dr.DOC Web erstellt nun automatisch ein Self-Signed Zertifikat und trägt es ein.
Das Public x509 Zertifikat am Client in den Root/Stammzertifikate Store laden:
Bitte beachten Sie, dass LetsEncrypt ein Zertifikat signiert, welches auf einen Domain Namen lauten muss. Beim Signieren muss Dr.DOC Web von außen aus dem Internet zugänglich sein. Zusätzlich muss dabei Dr.DOC Web den Port 443 und Port 80 verwenden.
Es gibt Möglichkeiten das zu umgehen, jedoch hat das einige Nachteile.
Beispiel:
Beispiel für FritzBox:
Dr.DOC Web Server Dienst beenden
sc.exe stop "Dr.DOC Web Server"
Öffnen Sie in Ihrem Dr.DOC Web Basisverzeichnis im Unterverzeichnis "confisgs" die Datei "server.ini"
Pfad: <Web-Basisverzeichnis>\configs\server.ini
z.B. C:\DrDOC\WEB\configs\server.ini
Bitte passen Sie folgende Einträge an:
[SERVER]
HOSTNAME=<Ihr Hostname>
Als Administrator ausführen:
Pfad: <Web-Basisverzeichnis>\cert.bat
z.B. C:\DrDOC\WEB\cert.bat
Die LetsEncrypt Zertifikate laufen ca. alle drei Monate ab und müssen erneuert werden. Der Certbot aktualisiert die Zertifikat automatisch, Win-ACME leider nicht.
Die Zertifikate sollten vor Ablauf erneuert werden (renew).
Folgende Aktionen werden ausgeführt:
Dr.DOC Web Server Dienst beenden
sc.exe stop "Dr.DOC Web Server"
Öffnen Sie in Ihrem Dr.DOC Web Basisverzeichnis im Unterverzeichnis "configs" die Datei "server.ini"
Pfad: <Web-Basisverzeichnis>\configs\server.ini
z.B. C:\DrDOC\WEB\configs\server.ini
Bitte passen Sie folgende Einträge an:
[SERVER]
HOSTNAME=<Ihr Hostname>
PORT=443
SSL_ACTIVE=true
SSL_CERT_FILE=<Pfad zur *.pfx Datei ODER Fingerprint des Zertifikats im Windows Zertifikate Store>
SSL_CERT_PASSWORD=<Passwort zur *.pfx Datei>
; oder PEM Zertifikat mit je einer Datei für Private- und Public Key
SSL_CERT_FILE_PRIVATE=<Pfad zur private key Datei>
SSL_CERT_FILE_PUBLIC=<Pfad zur PEM Cert Datei>
Dr.DOC Web Server Dienst starten
sc.exe start "Dr.DOC Web Server"
Protokoll zur Verwaltung von Dokumenten. Das ermöglicht den direkten Zugriff auf Dr.DOC Dokumente via Windows Explorer und andere WebDAV Clients.
Es werden pro Dr.DOC Archiv Feldauswahlen erstellt, um die Zuweisung einer WebDAV Eigenschaft mit einem Dr.DOC Feld und deren Werten zu verknüpfen.
Dadurch kann man Dokumente mit entsprechenden Feldvorbelegungen erstellen oder danach suchen.
Erstellen Sie eine Feldauswahl vom Typ ASCII-Importdefinition mit dem Namen "WEB_DAV" und folgenden Eigenschaften:
| Feldwert in Feldauswahl | Pflichtfeld | Beschreibung | Beispiel Feldname | Beispiel Autofeld |
|---|---|---|---|---|
| DATE | Änderungsdatum | geaendert_am | D | |
| TIME | Änderungszeit | geaendert_um | T | |
| DATETIME | Änderungsdatum/Zeit | DT | ||
DNAME<Level> |
Beschreibt den Verzeichnisnamen. <Level> kann Werte zwischen 1 bis 5 haben.Jede Verzeichnis-Ebene entspricht einem DNAME<Level>-Eintrag wird einem Dr.DOC Feld zugeordnet bzw. im Client als Verzeichnis dargestellt. Aus der Kombination bildet sich der Verzeichnisname. |
Firma | FF<Level> | |
FNAME<Level> |
x | Beschreibt den Dateinamen. <Level> kann Werte zwischen 1 bis 4 haben.Jede Ebene wird einem Dr.DOC Feld zugeordnet und im Dateinamen mit __-__ aneinandergefügt. Aus der Kombination bildet sich der Dateiname.Die Kombination der zugewiesenen Felder MUSS eindeutig sein. |
Name | F |
| ID | x | Eindeutige ID/GUID. CalDAV Client Apps setzen beim Erstellen teils eindeutige IDs und erwarten, dass die ID nicht geändert wird. Wenn ein Dokument in Dr.DOC erstellt wurde, sollte ebenfalls eine eindeutige ID erstellt werden. Es empfiehlt sich ein veränderbares ID-Feld mit eindeutigem Schlüssel. Siehe Autofeld. Andernfalls kann auch das Dr.DOC Feld DokuNr verwendet werden. |
uid | V DrDocGUID |
Der WebDAV Pfad baut sich wie folgt zusammen:
https://<domain>.<tld>:<Port>/webdav/<Archiv-Name>/<Suchvorlage>/<DNAME1>/<DNAME..>/<FNAME1>__-__<FNAME..>.<Extension>
| Parameter | Beschreibung |
|---|---|
<domain>.<tld>:<Port> |
Server HTTP(S) Adresse |
<Archiv-Name> |
Name des Archivs |
<Suchvorlage> |
Name der Suchvorlage. Der Wert _ gibt an, dass alle Dokumente/Datensätze des Archivs angezeigt werden sollen. |
z.B.:
https://drdoc.com/webdav/doc/Firma 1/Eingangsrechnung/Lieferant Maier GmbH__-__12345.pdf
Ggf. WebDAV Web Client installieren:
powershell -command "& {&Install-WindowsFeature WebDav-Redirector}"
Wenn Sie kein TLS/SSL Zertifikat im Dr.DOC Web installiert haben (TLS x509 Cert. wird dringend empfohlen!), muss folgendes ausgeführt werden, um unverschlüsselte Verbindungen zu erlauben.
reg add "HKLM\SYSTEM\CurrentControlSet\Services\WebClient\Parameters" /v BasicAuthLevel /t REG_DWORD /d "1" /f
WebClient Dienst starten:
sc start "WebClient"
Als Dr.DOC WebDAV als Netzlaufwerk einbinden (<drdoc.com> anpassen):
ping drdoc.com -n 2
net use N: https://<drdoc.com>/webdav/
So binden Sie ein Netzlaufwerk mittels WebDAV unter Windows 8 bzw. Windows 10 ein:
WebClient muss laufen (automatisch). Das ist i.d.R. der Fall.https://support.apple.com/de-de/guide/mac-help/mchlp1546/mac
App Davx5, siehe: https://www.davx5.com/
Es können auch Aufgaben, Termine und Journals synchronisiert werden!
Für Organisationen gibt es die App "Managed DAVx⁵" mit der die Einstellungen auf alle Geräte der Organisation ausgerollt werden können.
net N: /DELETE
Protokoll zur Verwaltung von Terminen und Aufgaben.
Das Mapping der Termineigenschaften erfolgt über die Feldauswahlen wie hier beschrieben für Extension *.ics.
Der CalDAV Pfad baut sich wie folgt zusammen, hat keine Verzeichnisse mit DNAME1 etc.
https://<domain>.<tld>/caldav/<Archiv-Name>/<Suchvorlage>/<ID>.ics
z.B.:
https://drdoc.com/caldav/termine/_/123456.ics
Pfad für CalDAV Client (z.B. Thunderbird oder DAVx5):
https://drdoc.com/caldav/termine/_/
Protokoll zur Verwaltung von Kontakten.
Das Mapping der Termineigenschaften erfolgt über die Feldauswahlen wie hier beschriebeen für Extension *.vcf.
Der CardDAV Pfad baut sich wie der WebDAV Pfad zusammen, hat keine Verzeichnisse mit DNAME1 etc.
https://<domain>.<tld>/carddav/<Archiv-Name>/<Suchvorlage>/<ID>.vcf
z.B.:
https://drdoc.com/carddav/kontakte/_/123456.vcf
Pfad für CardDAV Client (z.B. DAVx5):
https://drdoc.com/carddav/kontakte/_/