Document local dev server fallback
This commit is contained in:
@@ -6,7 +6,7 @@
|
|||||||
"environmentVariables": {
|
"environmentVariables": {
|
||||||
"ASPNETCORE_ENVIRONMENT": "Development"
|
"ASPNETCORE_ENVIRONMENT": "Development"
|
||||||
},
|
},
|
||||||
"applicationUrl": "https://localhost:55415;http://localhost:55416"
|
"applicationUrl": "https://localhost:55415;http://localhost:55416;http://0.0.0.0:5000"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -0,0 +1,158 @@
|
|||||||
|
# Lokaler Uebergangsserver
|
||||||
|
|
||||||
|
Stand: 2026-05-21
|
||||||
|
|
||||||
|
Diese Doku beschreibt, wie die Trafag-Cockpit-App voruebergehend auf dem Entwicklungs-PC bereitgestellt werden kann, solange der zentrale IIS-Server noch nicht korrekt erreichbar ist.
|
||||||
|
|
||||||
|
## Zweck
|
||||||
|
|
||||||
|
Der zentrale IIS-Server ist aktuell nicht ueber HTTPS erreichbar, weil der TLS-Handshake ein Client-Zertifikat fordert. Bis Marco/IT die IIS-SSL-Einstellungen korrigiert hat, kann die App temporaer lokal auf dem Entwicklungs-PC laufen.
|
||||||
|
|
||||||
|
## Aktueller lokaler Zugriff
|
||||||
|
|
||||||
|
Aktuelle IP im Trafag-WLAN/Firmennetz:
|
||||||
|
|
||||||
|
```text
|
||||||
|
172.16.9.185
|
||||||
|
```
|
||||||
|
|
||||||
|
URL fuer andere Mitarbeitende:
|
||||||
|
|
||||||
|
```text
|
||||||
|
http://172.16.9.185:5000
|
||||||
|
```
|
||||||
|
|
||||||
|
Hinweis: Die IP kann sich nach Neustart, WLAN-Wechsel, VPN-Wechsel oder DHCP-Erneuerung aendern. Neue IP mit `ipconfig` pruefen.
|
||||||
|
|
||||||
|
## Start der App
|
||||||
|
|
||||||
|
Im Projektordner:
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
cd C:\Users\koi\source\repos\Ai\TrafagSalesExporter
|
||||||
|
dotnet run
|
||||||
|
```
|
||||||
|
|
||||||
|
Das Entwicklungsprofil wurde in `Properties/launchSettings.json` erweitert:
|
||||||
|
|
||||||
|
```json
|
||||||
|
"applicationUrl": "https://localhost:55415;http://localhost:55416;http://0.0.0.0:5000"
|
||||||
|
```
|
||||||
|
|
||||||
|
Damit bleiben die lokalen Entwicklungs-URLs aktiv:
|
||||||
|
|
||||||
|
```text
|
||||||
|
https://localhost:55415
|
||||||
|
http://localhost:55416
|
||||||
|
```
|
||||||
|
|
||||||
|
Zusaetzlich lauscht die App fuer andere PCs auf:
|
||||||
|
|
||||||
|
```text
|
||||||
|
http://0.0.0.0:5000
|
||||||
|
```
|
||||||
|
|
||||||
|
Falls eine alte Visual-Studio-Instanz bereits laeuft, App stoppen und neu starten, damit die neue Portbindung aktiv wird.
|
||||||
|
|
||||||
|
## Firewall
|
||||||
|
|
||||||
|
Am 2026-05-21 wurde in einer Admin-CMD eine allgemeine Port-5000-Regel angelegt und auf alle Profile erweitert.
|
||||||
|
|
||||||
|
Aktueller Regelstand:
|
||||||
|
|
||||||
|
```text
|
||||||
|
Regelname: Local Dev Web Port 5000
|
||||||
|
Aktiviert: Ja
|
||||||
|
Richtung: Eingehend
|
||||||
|
Profile: Domaene, Privat, Oeffentlich
|
||||||
|
Protokoll: TCP
|
||||||
|
Lokaler Port: 5000
|
||||||
|
Remote-IP: Beliebig
|
||||||
|
Aktion: Zulassen
|
||||||
|
```
|
||||||
|
|
||||||
|
Pruefen:
|
||||||
|
|
||||||
|
```cmd
|
||||||
|
netsh advfirewall firewall show rule name="Local Dev Web Port 5000"
|
||||||
|
```
|
||||||
|
|
||||||
|
Falls die Regel neu angelegt werden muss:
|
||||||
|
|
||||||
|
```cmd
|
||||||
|
netsh advfirewall firewall add rule name="Local Dev Web Port 5000" dir=in action=allow protocol=TCP localport=5000 profile=any
|
||||||
|
```
|
||||||
|
|
||||||
|
Falls eine bestehende Regel auf alle Profile erweitert werden muss:
|
||||||
|
|
||||||
|
```cmd
|
||||||
|
netsh advfirewall firewall set rule name="Local Dev Web Port 5000" new profile=any
|
||||||
|
```
|
||||||
|
|
||||||
|
Regel spaeter entfernen:
|
||||||
|
|
||||||
|
```cmd
|
||||||
|
netsh advfirewall firewall delete rule name="Local Dev Web Port 5000"
|
||||||
|
```
|
||||||
|
|
||||||
|
Die Firewall-Regel bleibt nach Neustart und normalerweise auch nach Windows-Updates aktiv. Die App selbst startet nach einem Neustart nicht automatisch.
|
||||||
|
|
||||||
|
## HTTP / HTTPS
|
||||||
|
|
||||||
|
Die Freigabe fuer andere PCs erfolgt bewusst ueber HTTP:
|
||||||
|
|
||||||
|
```text
|
||||||
|
http://<PC-IP>:5000
|
||||||
|
```
|
||||||
|
|
||||||
|
Lokales HTTPS ueber `https://localhost:55415` funktioniert nur auf dem Entwicklungs-PC. Fuer andere PCs waere HTTPS mit Zertifikat und Trust-Aufwand verbunden. Fuer den temporaeren internen Betrieb reicht HTTP.
|
||||||
|
|
||||||
|
## VPN-Hinweis
|
||||||
|
|
||||||
|
Wenn der Entwicklungs-PC zuhause per AlwaysOnVPN verbunden ist, kann der Zugriff aus dem Buero auf die VPN-IP funktionieren, ist aber nicht garantiert.
|
||||||
|
|
||||||
|
Wenn `http://<VPN-IP>:5000` nicht erreichbar ist und die lokale Firewall-Regel aktiv ist, liegt es wahrscheinlich am AlwaysOnVPN-/Firmennetz-Routing. Das kann lokal auf dem PC nicht sicher freigeschaltet werden.
|
||||||
|
|
||||||
|
## Sicherheit
|
||||||
|
|
||||||
|
- Nur im Trafag-Firmennetz bzw. ueber interne VPN-Szenarien verwenden.
|
||||||
|
- Nicht oeffentlich freigeben.
|
||||||
|
- Der PC muss eingeschaltet bleiben.
|
||||||
|
- Das PowerShell-/Visual-Studio-Fenster mit der laufenden App muss offen bleiben.
|
||||||
|
- Finance Cockpit und HR KPI bleiben ueber ihre App-internen Logins geschuetzt.
|
||||||
|
|
||||||
|
## Zentraler IIS-Server
|
||||||
|
|
||||||
|
Aktueller Befund:
|
||||||
|
|
||||||
|
```text
|
||||||
|
TLS RequestedClientCert=True
|
||||||
|
SEC_E_NO_CREDENTIALS
|
||||||
|
```
|
||||||
|
|
||||||
|
Das bedeutet: Der Server fordert beim HTTPS/TLS-Handshake ein Client-Zertifikat. Dadurch erreichen Requests weder `diag.txt` noch `BiDashboard.dll`.
|
||||||
|
|
||||||
|
Marco/IT soll in IIS bei der Website bzw. Application die SSL Settings pruefen:
|
||||||
|
|
||||||
|
```text
|
||||||
|
Client certificates: Ignore
|
||||||
|
```
|
||||||
|
|
||||||
|
oder hoechstens:
|
||||||
|
|
||||||
|
```text
|
||||||
|
Client certificates: Accept
|
||||||
|
```
|
||||||
|
|
||||||
|
Nicht:
|
||||||
|
|
||||||
|
```text
|
||||||
|
Client certificates: Require
|
||||||
|
```
|
||||||
|
|
||||||
|
Danach testen:
|
||||||
|
|
||||||
|
```text
|
||||||
|
https://trch-webapp-bidashboard.trafagch.local/BiDashboard/diag.txt
|
||||||
|
https://trch-webapp-bidashboard.trafagch.local/BiDashboard/
|
||||||
|
```
|
||||||
@@ -12,6 +12,7 @@ Diese Datei ordnet die vorhandenen Markdown-Dateien ein. Ziel ist, alte Arbeitsn
|
|||||||
| `NEXT_STEPS_2026-04-15.md` | Aktuelle offene Punkte und naechste Schritte | Weiter pflegen |
|
| `NEXT_STEPS_2026-04-15.md` | Aktuelle offene Punkte und naechste Schritte | Weiter pflegen |
|
||||||
| `HANDOFF_2026-04-15.md` | Technischer Handoff / Kontext fuer Weiterarbeit | Weiter pflegen |
|
| `HANDOFF_2026-04-15.md` | Technischer Handoff / Kontext fuer Weiterarbeit | Weiter pflegen |
|
||||||
| `docs/DEPLOYMENT_IIS_HANDOFF_2026-05-19.md` | IIS-/Server-Handoff | Aktuell fuer Deployment |
|
| `docs/DEPLOYMENT_IIS_HANDOFF_2026-05-19.md` | IIS-/Server-Handoff | Aktuell fuer Deployment |
|
||||||
|
| `docs/LOCAL_DEV_SERVER_UEBERGANG_2026-05-21.md` | Lokaler Uebergangsserver auf Entwicklungs-PC | Aktuell bis IIS-Fix |
|
||||||
| `docs/FINANCE_ENTSCHEIDE.md` | Finance-Regeln und Kontrollpunkte | Aktuell fuehrend fuer Finance-Logik |
|
| `docs/FINANCE_ENTSCHEIDE.md` | Finance-Regeln und Kontrollpunkte | Aktuell fuehrend fuer Finance-Logik |
|
||||||
| `entscheide.md` | Kurzfassung der Finance-Fachentscheide | Aktuell als Kurzfassung |
|
| `entscheide.md` | Kurzfassung der Finance-Fachentscheide | Aktuell als Kurzfassung |
|
||||||
| `docs/HR_KPI_NACHDOKU_2026-05-13.md` | HR-KPI technische/fachliche Nachdoku | Aktualisiert um 2026-05-20 Erweiterungen |
|
| `docs/HR_KPI_NACHDOKU_2026-05-13.md` | HR-KPI technische/fachliche Nachdoku | Aktualisiert um 2026-05-20 Erweiterungen |
|
||||||
|
|||||||
@@ -23,6 +23,95 @@ Verifiziert:
|
|||||||
- `dotnet test TrafagSalesExporter.sln --verbosity minimal --no-restore -p:BaseOutputPath=.tmp_build\bin\ -p:BaseIntermediateOutputPath=.tmp_build\obj\`
|
- `dotnet test TrafagSalesExporter.sln --verbosity minimal --no-restore -p:BaseOutputPath=.tmp_build\bin\ -p:BaseIntermediateOutputPath=.tmp_build\obj\`
|
||||||
- Normaler Debug-Build war lokal durch eine von Visual Studio/.NET Host gesperrte `bin\Debug\net8.0\BiDashboard.dll` blockiert.
|
- Normaler Debug-Build war lokal durch eine von Visual Studio/.NET Host gesperrte `bin\Debug\net8.0\BiDashboard.dll` blockiert.
|
||||||
|
|
||||||
|
## Lokaler Uebergangsserver bis IIS-Fix 2026-05-21
|
||||||
|
|
||||||
|
Zweck:
|
||||||
|
|
||||||
|
- Falls der zentrale IIS-Server noch nicht erreichbar ist, kann die App voruebergehend auf dem Entwicklungs-PC laufen.
|
||||||
|
- Andere Mitarbeitende greifen dann im Firmennetz ueber die IP des PCs zu.
|
||||||
|
- Ausfuehrliche Betriebsdoku: `docs/LOCAL_DEV_SERVER_UEBERGANG_2026-05-21.md`.
|
||||||
|
|
||||||
|
Start auf dem Entwicklungs-PC:
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
dotnet run --urls "http://0.0.0.0:5000"
|
||||||
|
```
|
||||||
|
|
||||||
|
Nachtrag:
|
||||||
|
|
||||||
|
- `Properties/launchSettings.json` wurde so angepasst, dass das Entwicklungsprofil zusaetzlich auf `http://0.0.0.0:5000` lauscht.
|
||||||
|
- Bei Start aus Visual Studio bzw. ueber das Projektprofil bleibt `https://localhost:55415` lokal verfuegbar, Port `5000` ist aber zusaetzlich fuer andere PCs erreichbar.
|
||||||
|
- Falls bereits eine alte Visual-Studio-Instanz laeuft, App stoppen und neu starten, damit die geaenderte URL-Bindung aktiv wird.
|
||||||
|
|
||||||
|
Zugriff von anderen PCs:
|
||||||
|
|
||||||
|
```text
|
||||||
|
http://<PC-IP>:5000
|
||||||
|
```
|
||||||
|
|
||||||
|
Aktueller Stand vom 2026-05-21:
|
||||||
|
|
||||||
|
```text
|
||||||
|
PC-IP im WLAN/Firmennetz: 172.16.9.185
|
||||||
|
Lokale Test-URL: http://172.16.9.185:5000
|
||||||
|
```
|
||||||
|
|
||||||
|
IP des PCs ermitteln:
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
ipconfig
|
||||||
|
```
|
||||||
|
|
||||||
|
Firewall-Regel einmalig in einer PowerShell "Als Administrator" anlegen:
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
netsh advfirewall firewall add rule name="TrafagSalesExporter local web 5000" dir=in action=allow protocol=TCP localport=5000 profile=domain,private
|
||||||
|
```
|
||||||
|
|
||||||
|
Am 2026-05-21 wurde eine allgemeine Port-5000-Regel angelegt und danach auf alle Firewall-Profile erweitert:
|
||||||
|
|
||||||
|
```text
|
||||||
|
Regelname: Local Dev Web Port 5000
|
||||||
|
Aktiviert: Ja
|
||||||
|
Profile: Domaene, Privat, Oeffentlich
|
||||||
|
Protokoll: TCP
|
||||||
|
Lokaler Port: 5000
|
||||||
|
Aktion: Zulassen
|
||||||
|
```
|
||||||
|
|
||||||
|
Damit koennen spaeter auch andere lokale Entwicklungsprogramme auf Port 5000 von anderen Firmen-PCs erreicht werden, sofern sie an `0.0.0.0:5000` oder die konkrete PC-IP binden.
|
||||||
|
|
||||||
|
Pruefen:
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
netsh advfirewall firewall show rule name="TrafagSalesExporter local web 5000"
|
||||||
|
```
|
||||||
|
|
||||||
|
Spaeter wieder entfernen:
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
netsh advfirewall firewall delete rule name="TrafagSalesExporter local web 5000"
|
||||||
|
```
|
||||||
|
|
||||||
|
Hinweise:
|
||||||
|
|
||||||
|
- Die Firewall-Regel bleibt nach einem Windows-Neustart aktiv.
|
||||||
|
- Die Firewall-Regel bleibt normalerweise auch nach Windows-Updates aktiv.
|
||||||
|
- Da die Regel auf Domaene, Privat und Oeffentlich gilt, ist Port 5000 auch abgedeckt, wenn AlwaysOnVPN oder Windows das Netzwerk nicht als Domaenenprofil erkennt.
|
||||||
|
- Die App selbst startet nach einem Neustart nicht automatisch; `dotnet run ...` muss erneut gestartet werden.
|
||||||
|
- Die PC-IP kann sich nach Neustart, WLAN-Wechsel oder DHCP-Erneuerung aendern; dann `ipconfig` ausfuehren und die neue URL weitergeben.
|
||||||
|
- Der PC muss eingeschaltet bleiben und das PowerShell-Fenster muss offen bleiben.
|
||||||
|
- Nur im Firmennetz verwenden, nicht oeffentlich freigeben.
|
||||||
|
- Die lokale Uebergangs-URL ist bewusst HTTP, nicht HTTPS. Fuer diesen temporaeren internen Betrieb reicht das; lokales HTTPS waere moeglich, wuerde aber Zertifikats-/Trust-Aufwand fuer andere PCs verursachen.
|
||||||
|
- Finance Cockpit und HR KPI bleiben ueber ihre App-internen Logins geschuetzt.
|
||||||
|
- Wenn ein Finance-User im Buero die App ueber die VPN-IP des Entwicklungs-PCs trotzdem nicht erreicht, liegt es wahrscheinlich am AlwaysOnVPN-/Firmennetz-Routing. Das kann lokal auf dem PC nicht sicher freigeschaltet werden.
|
||||||
|
|
||||||
|
Serverbefund:
|
||||||
|
|
||||||
|
- Der IIS-Server fordert beim HTTPS/TLS-Handshake ein Client-Zertifikat (`RequestedClientCert=True`).
|
||||||
|
- Dadurch erreichen Requests weder `diag.txt` noch `BiDashboard.dll`.
|
||||||
|
- Marco/IT muss in IIS die SSL Settings pruefen und Client Certificates auf `Ignore` oder hoechstens `Accept` setzen, nicht `Require`.
|
||||||
|
|
||||||
## Markdown-Doku und Anwenderdokus nachgezogen 2026-05-20
|
## Markdown-Doku und Anwenderdokus nachgezogen 2026-05-20
|
||||||
|
|
||||||
Geaendert:
|
Geaendert:
|
||||||
|
|||||||
Reference in New Issue
Block a user