HAUFE Digitale Personalakte - DocumentUploader
RASKEN Tool für den Upload in die Digitale Personalakte.
Sicherheits- und Nutzungshinweise
Diese Anwendung verarbeitet Credentials, personenbezogene Daten und Dokumente. Sie darf nur durch hierzu berechtigte Personen, für einen zulässigen Zweck und unter Beachtung der beim Verantwortlichen geltenden Datenschutz-, Sicherheits- und Aufbewahrungsvorgaben eingesetzt werden. Vor dem Produktiveinsatz sind die fachlichen, technischen und organisatorischen Voraussetzungen durch den Verantwortlichen zu prüfen.
Credentials
- Credentials und das von PeopleDoc/UKG bezogene Zugriffstoken werden serverseitig in der aktuellen PHP-Session gespeichert und nicht durch diese Anwendung in einer Datenbank oder Konfigurationsdatei abgelegt. Wie lange eine nicht mehr verwendete serverseitige Session technisch vorgehalten wird, richtet sich zusätzlich nach der PHP- und Hosting-Konfiguration. Deshalb sollten Credentials nach der Nutzung ausdrücklich gelöscht werden.
- Als API-Ziel können ausschließlich die in der Anwendung fest vorgegebenen People-Doc-/UKG-Umgebungen ausgewählt werden. Frei eingegebene oder manipulierte API-Adressen werden serverseitig abgewiesen.
- Die Anwendung setzt ein technisch notwendiges, nur bis zum Ende der Browsersitzung gültiges PHP-Session-Cookie. Es enthält die zufällige Session-ID, nicht die Credentials oder Dokumentinhalte, und nutzt Secure, HttpOnly sowie SameSite Strict. Die Anwendung setzt keine Analyse-, Marketing- oder Tracking-Cookies.
- Formular- und Upload-Aktionen werden mit einem zufälligen, sitzungsgebundenen CSRF-Token serverseitig geprüft. Die Bestätigung der Hinweise wird nur akzeptiert, wenn auch die Checkbox serverseitig übermittelt wurde.
- Über „Credentials löschen“ werden die gespeicherten Credentials und Zugriffstoken aus der aktuellen Sitzung entfernt. Dabei werden außerdem alle lokalen Lerndaten dieses DocumentUploaders, die zu diesen Credentials gehörenden Upload-Logs sowie temporäre Upload-Dokumente gelöscht und die Session-ID wird erneuert. Der Browser wird zusätzlich angewiesen, den Cache dieser Website zu leeren. Ob der Browser diese Anweisung vollständig ausführt, hängt vom verwendeten Browser ab; Verlaufseinträge und vom Browser selbst gespeicherte Formulardaten oder Zugangsdaten kann die Anwendung nicht löschen.
- Rasken GbR betreibt die Anwendung und hat im erforderlichen Umfang technischen Zugriff auf die Systeme. Personenbezogene Daten werden ausschließlich zur Bereitstellung, Absicherung, Wartung und Fehlerbehebung sowie nach dokumentierter Weisung des Verantwortlichen verarbeitet. Eine Nutzung von Credentials, Dokumenten oder personenbezogenen Daten für eigene Zwecke findet nicht statt. Zugriffe sind auf berechtigte Personen und den jeweils erforderlichen Zweck zu beschränken. Die datenschutzrechtlichen Rollen und Pflichten richten sich nach den geltenden Vereinbarungen, insbesondere einer gegebenenfalls erforderlichen Vereinbarung zur Auftragsverarbeitung.
Dokumentverarbeitung und Upload
- Ausgewählte Dokumente werden erst beim ausdrücklich gestarteten Upload an den Server dieser Anwendung übertragen. Der Server führt die Dublettenprüfung durch und überträgt Dokument, Mitarbeiterzuordnung, Dokumenttyp, Titel und Datum anschließend an die ausgewählte People-Doc-/UKG-API. Für die Dublettenprüfung wird aus der People-Doc-/UKG-Mitarbeiter-ID, der Dokumenttyp-ID und dem SHA-256-Hash der Datei eine externe Dublettenreferenz gebildet. Nach einer Suche nach dieser Referenz wird sie bei einem neuen Mitarbeiterdokument als eindeutige
external_referencedauerhaft an PeopleDoc/UKG übermittelt. Der Hash ist ein nicht als Dokumentinhalt lesbarer Dateifingerabdruck, kann aber zur Wiedererkennung einer identischen Datei verwendet werden. Es werden keine frei eingebbaren API-Ziele akzeptiert. - Der API-Upload erfolgt zweistufig: Zuerst wird die Datei übertragen, danach wird sie dem Mitarbeiter und Dokumenttyp zugeordnet. Scheitert der zweite Schritt, kann die Datei bereits im Uploadbereich von PeopleDoc/UKG vorhanden sein, obwohl kein Mitarbeiterdokument angelegt wurde. Aufbewahrung und Bereinigung solcher nicht zugeordneten API-Uploads richten sich nach PeopleDoc/UKG und können von dieser Anwendung nicht garantiert werden.
- Für Upload, lokale Verarbeitung und API gelten unterschiedliche Größenbegrenzungen. Für die moderne UKG-HRSD-API v3 ist eine maximale Dateigröße von 10 MiB beziehungsweise 10.485.760 Byte dokumentiert. Diese Anwendung verwendet dagegen die klassische API v2 mit dem Upload-Endpunkt
/client/document; dessen offizielle Spezifikation nennt keine verbindliche Maximalgröße. Die Anwendung erzwingt selbst keine feste 10-MiB-Grenze. 10 MiB je Dokument dienen deshalb nur als konservative Orientierung und garantieren nicht die Annahme durch die ausgewählte Umgebung. Dateien ab 8 MiB sollten besonders geprüft und bei Bedarf vor dem Upload geteilt werden.
Aktuelle PHP-Grenzen: upload_max_filesize 128M, post_max_size 1024M. Die jeweils niedrigste wirksame Grenze ist maßgeblich. Sehr große ZIP-Dateien, Verzeichnisse oder Dokumentmengen können abgelehnt werden oder zu Timeouts führen. - Vorschau, Inhaltsanalyse und automatische Erkennung werden lokal im Browser ausgeführt. Bei der normalen Dokumentklassifikation wird aus textbasierten PDFs höchstens der Text von 30 Seiten beziehungsweise 250.000 Zeichen gelesen. Bei Verteilprojekten wird für die positionsbezogene Trennung der Text sämtlicher PDF-Seiten lokal ausgelesen. Auch aus DOCX-, XLSX-, EML-, MSG- und TXT-Dateien wird für die jeweilige Vorschau oder Erkennung Text gelesen. Es findet keine OCR statt; Bildinhalte, eingescannte PDFs ohne Textschicht und ältere DOC-Dateien werden inhaltlich nicht erkannt. ZIP-Dateien dienen nur als Container für die enthaltenen unterstützten Dateien.
- Für Suche und automatische Zuordnung ruft die Anwendung Mitarbeiter- und Dokumenttyplisten über den Server aus der ausgewählten People-Doc-/UKG-Umgebung ab. Eingegebene Suchbegriffe werden hierfür an diese API übermittelt. Bei Verteilprojekten wird zunächst der Katalog der Standard- und benutzerdefinierten Mitarbeiterfelder geladen. Nach Auswahl eines oder mehrerer Vergleichs-, Titel- oder Datumsfelder werden nur die Werte dieser Felder sowie Mitarbeiter-ID, Name und Personalnummer zur lokalen Seitenzuordnung, Titelerzeugung und Datumsbestimmung an den Browser übermittelt. Markierungen, Feldzuordnungen, Dokumenttypauswahl, Titelvorlagen und Datumsregeln eines Verteilprojekts werden nicht dauerhaft gespeichert. Die abgerufenen Listen, ausgewählten Dateien, Markierungen, Zuordnungen, Dokumenttypauswahl, Titelvorlagen, Datumsregeln und ausgelesenen Inhalte werden im Arbeitsspeicher der geöffneten Seite zwischengespeichert und beim Neuladen oder Schließen der Seite verworfen; Lerndaten und serverseitige Upload-Logs sind davon ausgenommen und werden gesondert beschrieben.
- TXT-, EML- und MSG-Dateien werden vor dem Upload lokal in PDF umgewandelt. Bei EML und MSG werden Absender, Empfänger, CC, Datum, Betreff und Nachrichtentext übernommen; Anhänge werden weder angezeigt, ausgewertet noch in das PDF eingebettet. Dokumentinhalte werden nicht an einen externen Vorschau-, OCR- oder Konvertierungsdienst gesendet.
- PDF-Dateien können in der lokalen Vorschau vor der angezeigten Seite geteilt oder um die angezeigte Seite gekürzt werden. Dabei entstehen ausschließlich im Arbeitsspeicher des Browsers neue PDF-Dateien und Dokumentzeilen; die ursprüngliche Datei auf dem Endgerät wird nicht verändert. Erst der ausdrücklich gestartete Upload überträgt die neuen Dateien. Ein Neuladen oder Schließen der Seite verwirft noch nicht hochgeladene Änderungen und Teildokumente.
- Die Dateigröße der Teildokumente lässt sich nicht zuverlässig aus Seitenzahl oder Ausgangsgröße vorhersagen, weil eingebettete Bilder, Schriften und andere Ressourcen in mehreren Teilen enthalten sein können. Deshalb muss die tatsächliche Größe jedes Teildokuments nach jeder Teilung erneut geprüft werden; Teile über 10 MiB sollten weiter geteilt werden. Für eine stabile Verarbeitung im Browser sollten Ausgangs-PDFs 100 MiB nicht überschreiten; auf leistungsschwachen Geräten kann bereits bei kleineren Dateien der Arbeitsspeicher nicht ausreichen. Verschlüsselte oder kennwortgeschützte PDFs können nicht zuverlässig bearbeitet werden; vorhandene digitale Signaturen verlieren durch eine Teilung oder das Entfernen einer Seite ihre Gültigkeit.
- HTML-Inhalte aus EML, MSG und DOCX werden für die Vorschau bereinigt; unter anderem werden Skripte, Formulare und extern geladene Bilder entfernt. Diese Bereinigung ersetzt keine Schadsoftwareprüfung. Der aktuell verwendete klassische Upload-Endpunkt
/client/documentist in der UKG-Spezifikation nicht als Endpunkt mit Virenprüfung ausgewiesen. Der DocumentUploader fordert für diesen Upload keine Virenprüfung an, führt selbst keine Virenprüfung durch und wertet keinen Scanstatus aus. Ob außerhalb dieser Anwendung weitere Prüfungen durch PeopleDoc/UKG oder den Betreiber stattfinden, kann der DocumentUploader nicht feststellen oder garantieren. Unbekannte oder nicht vertrauenswürdige Dateien sollten nicht verarbeitet und Links in Dokumentvorschauen nicht ungeprüft geöffnet werden. - ZIP-Dateien werden im regulären Bedienablauf lokal im Browser entpackt. Erst beim ausdrücklich gestarteten Upload werden die ausgewählten Einzeldokumente an PHP und anschließend an die API der Digitalen Personalakte übertragen.
- Für Oberfläche, Vorschau und Dateiverarbeitung lädt der Browser Programmbibliotheken von cdn.jsdelivr.net, cdn.sheetjs.com und bei der MSG-Verarbeitung zusätzlich von esm.sh. Dabei werden technisch bedingt insbesondere IP-Adresse, Zeitpunkt sowie Browser- und Verbindungsdaten an diese Anbieter übertragen; Dokumente und ausgelesene Dokumentinhalte werden von der Anwendung nicht an diese CDN-Anbieter gesendet.
- Die lokale Lernfunktion ist standardmäßig deaktiviert und muss nach Bestätigung dieser Hinweise separat über „Lerndaten aktivieren“ freigeschaltet werden. Erst danach werden nach erfolgreichen, manuell bestätigten Zuordnungen Dateiname, Dokumenttyp und dessen ID, Zeitpunkt, Bestätigungshäufigkeit, korrigierte Vorschläge sowie ein lokal erzeugtes, hashbasiertes Inhaltskondensat im Browser gespeichert. Dokumentinhalte selbst werden nicht gespeichert. Dateinamen und Zuordnungen können dennoch personenbezogene Angaben enthalten; die Lerndaten sind deshalb wie personenbezogene Daten zu schützen.
- Lerndaten werden nach API-Umgebung und Client getrennt. Beispiele, die älter als 18 Monate sind, werden nicht mehr für Vorschläge gelesen, können aber im lokalen Browserspeicher verbleiben, bis sie über „Lerndaten löschen“, „Lernen deaktivieren“, „Credentials löschen“ oder durch Löschen der Browser-Websitedaten entfernt werden. Das Schließen des Browsers löscht den lokalen Speicher nicht. Ohne eine erneut erteilte Zustimmung werden vorhandene Lerndaten in einer neuen PHP-Session nicht verwendet.
- Upload-Logs werden anwendungsseitig verschlüsselt in einem temporären Serververzeichnis gespeichert. Sie enthalten Zeitpunkt, Status, Dateiname, Mitarbeiterbezeichnung beziehungsweise Personalnummer, Dokumenttyp, Quellpfad, Ergebnistext und den Status der Dublettenprüfung. Die API-Diagnose kann außerdem Tokenquelle, Client-ID, API-Schritt, Methode, Zieladresse und HTTP-Status sowie Request-Daten wie Dateiname, MIME-Typ, Dateigröße, SHA-256-Hash, Mitarbeiter-ID, Dokumenttyp-ID, Titel, Datum, UKG-Datei-ID und externe Dublettenreferenz enthalten. Aus API-Antworten werden ausgewählte Identifikations-, Status- und Zeitangaben sowie von der API gelieferte Fehlerdetails protokolliert. Diese Angaben können personenbezogen oder personenbeziehbar sein. Zugriffstoken und Anwendungsgeheimnisse werden aus den Diagnosedaten entfernt; der binäre Dateiinhalt beziehungsweise Dokumenttext wird nicht in das Upload-Log geschrieben. Beim Export werden Logs als unverschlüsselte TXT-Datei bereitgestellt. Über „Log löschen“ oder „Credentials löschen“ werden die zu diesen Credentials gehörenden Logs gelöscht. Verwaiste Logdateien und temporäre Uploadverzeichnisse werden beim nächsten Aufruf der Anwendung bereinigt, wenn sie mindestens 24 Stunden alt sind; Backups oder außerhalb der Anwendung geführte Systemprotokolle bleiben davon unberührt.
- Server-Backups, Systemlogs, Temp-Verzeichnisse und Zugriffsprotokolle liegen außerhalb der Kontrolle dieser PHP-Datei und fallen in den Verantwortungsbereich von IONOS SE. Mit IONOS SE besteht ein Vertrag zur Auftragsverarbeitung (AVV). Es gilt die Datenschutzerklärung auf dieser Website.
Verwendete Drittbibliotheken und Lizenzen
Die Anwendung bindet die folgenden Drittbibliotheken direkt ein. Abhängigkeiten, die bereits Bestandteil eines ausgelieferten Bibliotheks-Bundles sind, unterliegen den jeweils im Bundle enthaltenen Lizenz- und Urheberrechtshinweisen.
| Bibliothek | Verwendung | Lizenz |
|---|---|---|
| Bootstrap 5.3.3 einschließlich des im JavaScript-Bundle enthaltenen Popper 2.11.8 | Layout, Bedienelemente, Tabs und Dialoge | MIT |
| JSZip 3.10.1 | Lokales Lesen und Entpacken von ZIP-Dateien | MIT oder GPL-3.0-or-later; in dieser Anwendung unter MIT verwendet |
| Mammoth.js 1.12.0 | Lokale DOCX-Textauswertung und -Vorschau | BSD-2-Clause |
| PDF.js / pdfjs-dist 3.11.174 | Lokale PDF-Vorschau und Textauswertung | Apache-2.0 |
| pdf-lib 1.17.1 | Lokales Teilen von PDF-Dateien | MIT |
| SheetJS Community Edition 0.20.3 | Lokale XLSX-Auswertung und -Vorschau | Apache-2.0 |
| @kenjiuno/msgreader 1.28.0 | Lokales Auslesen von Outlook-MSG-Dateien | Apache-2.0 |
| @kenjiuno/decompressrtf 0.1.4 | Dekomprimierung von RTF-Inhalten aus MSG-Dateien | BSD-2-Clause |
| rtf.js 3.0.9 | Lokale Darstellung von RTF-Inhalten | MIT |
Die genannten Open-Source-Lizenzen erlauben grundsätzlich auch eine kommerzielle Nutzung, verlangen jedoch je nach Lizenz insbesondere die Beibehaltung der jeweiligen Urheberrechts-, Lizenz- und Haftungshinweise. Maßgeblich ist stets der vollständige Lizenztext des verlinkten Projekts.
Verantwortung und Risikominimierung
- Automatisch ermittelte Mitarbeiter, Dokumenttypen und angezeigte Sicherheitswerte sind unverbindliche, heuristische Vorschläge. Auch ein hoher Prozentwert ist keine Garantie für eine richtige Zuordnung. Mitarbeiter, Dokumenttyp, Titel, Datum, Dateiformatbeschränkungen des gewählten Dokumenttyps und mögliche Dubletten müssen vor jedem Upload fachlich kontrolliert werden. Nach jeder PDF-Teilung sind zusätzlich Seitenbereich, Vollständigkeit und Reihenfolge für jedes entstandene Teildokument zu prüfen. Die Anwendung übernimmt Zuordnungsdaten aus der Ausgangszeile automatisch; dies stellt keine fachliche Bestätigung dar.
- Uploads sollten zunächst mit einer kleinen Datenmenge validiert werden. Wenn eine Test- oder Staging-Umgebung der Digitalen Personalakte vorhanden ist, sollte diese dafür genutzt werden. Die endgültige Annahme einer Datei und die zulässigen Dateiendungen werden von PeopleDoc/UKG geprüft; ein abgelehnter Upload darf nicht durch Auswahl eines fachlich falschen Dokumenttyps umgangen werden.
- Der Benutzer sollte vor dem Upload sicherstellen, dass die Digitale Personalakte entsprechend gesichert ist und bei Bedarf wiederhergestellt werden kann.
- Gewährleistung und Haftung richten sich nach den anwendbaren gesetzlichen Vorschriften und den getroffenen vertraglichen Vereinbarungen. Zwingende gesetzliche Haftungstatbestände bleiben unberührt.
Wenn Unsicherheit über Rechtmäßigkeit, Datenqualität oder technische Sicherheit besteht, darf die Software nicht genutzt werden.