Search the FirstSpirit Knowledge Base
Hallo zusammen,
wir nutzen in einem unserer Projekte eine globale WebApp in der wir uns aus der Preview / Webedit heraus via Ticket anmelden:
#global.getUserService().getConnection().createTicket(true)
Jedoch liefert Session -> UserPrincipal -> UserDTO.getRealname immer "SYSTEM".
Wie kommt man an den tatsächlich eingeloggten User, bzw. kann es sein, dass ein Login via Ticket nicht zu demselben User einloggt der schon in der Preview/Webedit eingeloggt ist - obwohl das Login-Ticket in der Preview erstellt wurde?
Beste Grüße
Dominic Graulich
Die Vorschau-Erzeugung läuft immer unter einem internen System-Benutzer. Für deinen Anwendungs-Fall kannst du z.B. DynamicPersonalization benutzen.
Hallo Peter,
die globale Webapp (über ein Modul deployt) befindet sich auf dem Internal-Jetty auf dem auch die Preview läuft.
In der Preview bekomme ich folgende Meldung zu nachfolgend aufgeführtem Code:
Also bin ich hier in der Preview anscheinend nicht mit dem SYSTEM User angemeldet.
Der Code dazu:
#GLOBAL.EDITOR: $CMS_VALUE(#global.gca("editor"))$<br />
<%
javax.security.auth.Subject subject = (javax.security.auth.Subject) request.getSession().getAttribute("subject");
de.espirit.firstspirit.access.auth.FSUserPrincipal userPrincipal = (de.espirit.firstspirit.access.auth.FSUserPrincipal) subject.getPrincipals().toArray()[0];
%>
SESSION USER: <%=userPrincipal.getUser().getRealname()%><br />
Rufe ich eine solche Test.jsp in der globalen Webapp auf, an der ich mich via Login-Ticket angemeldet habe, kommt folgende Meldung:
Auch der Webservice, bei dem ich mich über &login.ticket=$CMS_VALUE(#global.getUserService().getConnection().createTicket(true))$ anmelde liefert den SYSTEM User.
Wie kann es sein, dass man in der Preview mit dem Original-User (in diesem Fall Dominic.Graulich) angemeldet ist und wenn ich mich aus dieser Preview-Sitzung heraus mit einem Login-Ticket an der globalen Webapp anmelde, mit dem SYSTEM User?
Beste Grüße
Dominic
Hallo zusammen,
gibt es hier noch ein Update?
Hier die Frage, die für mich noch nicht geklärt ist:
Die kann es sein, dass man in der Preview mit dem Original-User (in diesem Fall Dominic.Graulich) angemeldet ist und wenn ich mich aus dieser Preview-Sitzung heraus mit einem Login-Ticket an der globalen Webapp anmelde, mit dem SYSTEM User?
Beste Grüße
Dominic
Ich kann mich hier nur wiederholen:
Die Vorschau-Erzeugung läuft immer unter einem internen System-Benutzer. Für deinen Anwendungs-Fall kannst du z.B. DynamicPersonalization benutzen
Anders formuliert: Der Benutzer innerhalb der Vorschau ist nicht der eingeloggte Web-Benutzer.