Wie kann die JSESSIONID Property 'Restrict cookies to HTTPS sessions' beim WebSphere Application Server mit wsadmin für alle Server gesetzt werden?

Antwort

Um die JSESSIONID-Property „Restrict cookies to HTTPS sessions“ (entspricht dem Setzen des Secure-Flags für das JSESSIONID-Cookie) beim IBM WebSphere Application Server für alle Server via `wsadmin` zu setzen, musst du das Attribut `secure` im Cookie-Konfigurationsobjekt anpassen. Dies geht über das `SessionManager`-Objekt der jeweiligen Webcontainer-Konfiguration. **Vorgehen:** 1. **wsadmin starten** (z.B. mit Jython): ```bash wsadmin.sh -lang jython ``` 2. **Script-Beispiel (Jython):** ```python # Hole alle Server servers = AdminConfig.list('Server').splitlines() for server in servers: # Hole den SessionManager für den Server sessionManager = AdminConfig.list('SessionManager', server) if sessionManager: # Hole die Cookie-Konfiguration cookie = AdminConfig.showAttribute(sessionManager, 'defaultCookieSettings') if cookie: # Setze das Secure-Flag auf true AdminConfig.modify(cookie, [['secure', 'true']]) print("Secure-Flag für Server %s gesetzt." % server) # Änderungen speichern AdminConfig.save() ``` 3. **Was passiert?** - Das Script sucht alle Server, holt deren SessionManager und setzt das Secure-Flag für das JSESSIONID-Cookie. - Damit wird die Option „Restrict cookies to HTTPS sessions“ aktiviert. **Hinweis:** - Nach der Änderung ist ein Neustart der betroffenen Server/Cluster empfehlenswert. - Die Änderung gilt für alle Anwendungen auf dem jeweiligen Server. **Offizielle IBM-Dokumentation:** [IBM WebSphere Application Server: Session management custom properties](https://www.ibm.com/docs/en/was/9.0.5?topic=manager-session-management-custom-properties) **Weitere Infos:** - Die Einstellung ist auch im Admin-Console unter: *Application servers > [Servername] > Session management > Cookies > Restrict cookies to HTTPS sessions* zu finden. **Achtung:** - Die Änderung betrifft nur neue Sessions. Bereits bestehende Cookies werden nicht automatisch aktualisiert. **Tipp:** - Teste das Script zuerst in einer Testumgebung, bevor du es produktiv einsetzt.

Kategorie: IT Tags: WebSphere JSESSIONID Wsadmin
Frage stellen und sofort Antwort erhalten