Ich möchte einen Sicherheitskontext zu meinem Rest Service übergeben.Rest - Jersey.Client pass @SecurityContext zu Server
Auf Server-Seite versuche ich, dieses zu erhalten, mit:
public Response postObject(@Context SecurityContext security, JAXBElement<Object> object) {
System.out.println("Security Context: " + security.getUserPrincipal());
.....
Aber eigentlich das SJSO ist null.
Auf Client-Seite im gerade tun:
ClientConfig config = new DefaultClientConfig();
Client client = Client.create(config);
client.addFilter(new HTTPBasicAuthFilter("user", "password"));
Also, ich zusätzlich etwas in meinem web.xml ändern muß, um es zum Laufen zu bringen?
Ich hoffte, es funktioniert, ohne statische Benutzer in der Tomcat-Benutzer xml einzurichten. So kann ich den User/Passwort vom Sicherheitskontext mit meinem "persistenten" user/password hashmap serverseitig vergleichen. Aber wenn es nicht ohne Tomcat-Benutzer-XML funktioniert, wie kann es getan werden, um Benutzer dynamisch diesem Benutzer-XML hinzuzufügen? Wenn ich statische Benutzer bin, kann ich keinen neuen Benutzer registrieren. Ich möchte diesen Versuch nicht verwenden: http://objecthunter.congrace.de/tinybo/blog/articles/89 cuz Ich möchte nur mit einer semi Persistenz wie eine HashMap von Benutzer/Passwort arbeiten.
Neben einer anderen Frage: Warum beziehen sich alle auf Apache HttpClient, wenn es um Sicherheit in Jersey geht, wenn es so funktioniert, wie ich es geschrieben habe?
Mein Versuch bezieht sich auf diesen Beitrag:
Jersey Client API - authentication
Ja, das ist der web.xml Teil. Ich habe viel über mein Problem gelesen. Es scheint, dass ich nicht mit einer halbpersistenten Karte von Benutzern arbeiten kann. Auf der einen Seite kann ich nur mit statischen Benutzern arbeiten, die in der tomcat-user.xml deklariert sind und auf der anderen Seite könnte ich es mit dynamischen Benutzern aus meiner Datenbank tun. –