MCDMS WebAkte wird für den Betrieb im internen Kliniknetz ausgelegt. Im Produktivbetrieb erfolgt der Zugriff ausschließlich über HTTPS.
HTTPS
Beispiel:
https://mcdms-webakte.klinik.local:8443/
Der verwendete DNS-Name muss im Serverzertifikat enthalten sein.
Empfohlen wird ein Zertifikat der internen Zertifizierungsstelle der Klinik.
Selbstsignierte Zertifikate sollten nur für Testsysteme verwendet werden.
Benutzeranmeldung
Die Anmeldung erfolgt mit vorhandenen MCDMS-Benutzern.
Die Zugangsdaten werden nicht in URLs übertragen und nicht in Logdateien gespeichert.
Sitzungen
Die Sitzungssteuerung erfolgt über WEB.INI.
Beispiel:
[SESSION]
CookieName=MCDMS_SESSION
IdleTimeoutMinutes=30
AbsoluteTimeoutHours=8
MaxSessionsPerUser=3
IdleTimeoutMinutes
Beendet die Sitzung nach der angegebenen Zeit ohne Benutzeraktivität.
AbsoluteTimeoutHours
Begrenzt die maximale Lebensdauer einer Sitzung unabhängig von der Aktivität.
MaxSessionsPerUser
Begrenzt die Anzahl gleichzeitig aktiver Sitzungen eines Benutzers.
Ist eine Sitzung abgelaufen, wird beim nächsten Zugriff wieder die Loginseite angezeigt.
MCDMS5API
Jede WebSession besitzt eine eigene MCDMS5API.Framework-Instanz.
Die MCDMS-Aufrufe werden zentral über die dafür vorgesehene COM-STA ausgeführt.
Beim Ende einer Sitzung wird der aktuelle Patientenkontext sauber geschlossen und die MCDMS-Sitzung beendet.
Patientenschutz
Der aktuell ausgewählte Patient wird serverseitig in der Sitzung verwaltet.
Formular- und Datensatzoperationen werden immer gegen den aktuellen Patienten geprüft.
Eine technische Datensatz-ID allein reicht nicht aus, um auf Datensätze eines anderen Patienten zuzugreifen.
Rollen
Formulare können über Roles auf bestimmte MCDMS-Benutzergruppen eingeschränkt werden.
Beispiel:
Roles=ARZT;ADMIN
Die Prüfung erfolgt serverseitig.
Bei:
Roles=
besteht keine zusätzliche Rollenbeschränkung.
SQL-Sicherheit
Tabellen- und Spaltennamen stammen aus der serverseitigen Konfiguration.
Datenwerte werden parametrisiert an SQL Server übergeben.
Der Browser kann keine eigenen SQL-Befehle, Tabellen- oder Spaltennamen vorgeben.
Die SQL-Verbindung wird aus der bestehenden MCDMS-Konfiguration übernommen.
Script-Sicherheit
Scripts können ausschließlich über die serverseitige Konfiguration referenziert werden.
Erlaubt sind nur .MCFSCR-Dateien innerhalb des APPPATH.
Der Browser kann keine beliebigen Scripts zur Ausführung auswählen.
Dateizugriff über den Browser
Nicht jede Datei unter:
{APPPATH}\Web
ist automatisch per Browser erreichbar.
Statisch freigegeben sind nur die ausdrücklich vorgesehenen Webressourcen.
Ordner wie:
PROGRAM
SETUP
LOGS
sowie INI-Dateien können nicht direkt über HTTP heruntergeladen werden.
Formular-HTML wird ebenfalls nicht frei als statische Datei ausgeliefert, sondern kontrolliert über die Formularlogik der MCDMS WebAkte.
Windows-Dienst
MCDMS WebAkte läuft im Produktivbetrieb als Windows-Dienst.
Dienstname:
MCDMS.WebAkte
Anzeigename:
MCDMS-WebAkte
Status prüfen:
Get-Service MCDMS.WebAkte
Dienst neu starten:
Restart-Service MCDMS.WebAkte
Nach einem Neustart des Windows Servers startet der Dienst automatisch.
Dienstkonto
Für eine lokale MCDMS-Installation kann LocalSystem verwendet werden.
Bei einem APPPATH auf einer Netzwerkfreigabe muss ein geeignetes lokales oder Domänenkonto mit den notwendigen Netzwerkrechten verwendet werden.
Das Dienstkonto benötigt Zugriff auf die für MCDMS WebAkte benötigten Dateien und Datenquellen.
Dateisystemseitig werden durch MCDMS WebAkte ausschließlich Dateien innerhalb von:
{APPPATH}\Web
angelegt, geändert oder gelöscht.
Zuletzt ausgewählte Patienten
Die zuletzt ausgewählten Patienten werden über die vorhandene MCDMS-VRL-Datei verwaltet.
Pfad:
{APPPATH}\CONFIG\USER\<LOGINNAME>.VRL
Die WebAkte liest und aktualisiert diese bestehende MCDMS-Datei.
Die Anzahl der im Web angezeigten Einträge wird über:
[PATIENT]
RecentPatientCount=10
gesteuert.
Logging
Die Logdateien befinden sich unter:
{APPPATH}\Web\LOGS
Beispiel:
D:\Kliniken\KLINIK\MCDMS\Web\LOGS
Dateiname:
MCDMS-WebAkte-YYYY-MM-DD.log
Es werden nur relevante:
WARN
ERROR
Einträge protokolliert.
Normale erfolgreiche Benutzeraktionen werden nicht geloggt.
Nicht protokolliert werden unter anderem:
- Passwörter
- Patientenname
- PatientID
- Geburtsdatum
- Diagnosen
- Medikamente
- Formularinhalte
- Session-Cookies
- SQL-Passwörter
Die Aufbewahrungsdauer wird über WEB.INI eingestellt:
[LOGGING]
DeleteLogsAfterDays=30
Mit:
DeleteLogsAfterDays=0
wird die automatische Löschung deaktiviert.
Statusprüfung
Die Erreichbarkeit des WebServers kann über:
/api/status
geprüft werden.
Beispiel:
Invoke-WebRequest `
https://mcdms-webakte.klinik.local:8443/api/status `
-UseBasicParsing
Erwartet:
StatusCode : 200
Der Status-Endpunkt bestätigt, dass der WebServer erreichbar ist.
Er prüft nicht vollständig:
- MCDMS-Login
- SQL Server
- Scripts
- konkrete Formulare
Updates
Vor einem Update sollte der Windows-Dienst gestoppt werden:
Stop-Service MCDMS.WebAkte
Danach werden die freigegebenen Dateien innerhalb von:
{APPPATH}\Web
aktualisiert.
Anschließend:
Start-Service MCDMS.WebAkte
und:
/api/status
prüfen.
Klinikspezifische Konfigurationen sollten bei Updates nicht ungeprüft überschrieben werden.
Dazu gehören insbesondere:
WEB.INI
FORMULARE.INI
PATIENTEN.INI
AKTENSTRUKTUR.INI
