Ich habe ein Workaround für dieses Problem implementiert. Sie können eine Art von Cookie-basierter Authentifizierung zur Unterstützung der Passwort-Authentifizierung verwenden.
In meinem Fall, wenn eine erfolgreiche Anmeldung mit der HTTP-Basisauthentifizierung erfolgt, sende ich ein Cookie in mein Servlet, das den Benutzernamen und das Kennwort auf die gleiche Weise enthält, wie es der HTTP-Header enthält, wenn die Basic-Methode verwendet wird (BASE64-kodiert). Web Start speichert dieses Cookie im Cookie-Speicher des Internet Explorers unter Windows (auf anderen Systemen hat Web Start einen eigenen Cookie-Speicher). Web Start sendet dieses Cookie dann jedes Mal, wenn von meiner Domäne aus auf eine Ressource zugegriffen wird. Sie können eine sehr lange Lebensdauer für das Cookie festlegen (z. B. 10 Jahre), die wahrscheinlich ohnehin die aktuelle Betriebssysteminstallation überdauert.
Bei nachfolgenden Anfragen prüfe ich das Vorhandensein des Cookies und versuche, den Benutzer dementsprechend zu validieren. Wenn das Cookie auth ungültig ist und kein HTTP Authorization
Header erhalten (oder der ist auch ungültig), sende ich die HTTP 401 Unauthorized
Status.
Der Nachteil ist, dass der Benutzername und das Passwort als Cookie auf dem Computer gespeichert werden. Das Kennwort wird auf die gleiche Weise wie bei der HTTP-Basisauthentifizierung über das Netzwerk gesendet, nur in einer anderen Kopfzeile, so dass Sie es mit HTTPS schützen können.
Dies löst auch das Problem der fehlenden Passwort-Erinnerungsoption bei Linux Web Start.