| 

.NET C# Java Javascript Exception

Shiro - Authentifizierungsinformationen auslesen

Dies ist das Archiv des ehemaligen Forums zum Thema Groovy, Grails, Griffon und Bean Scripting Framework, welches unter groovy-forum.de existierte. Die neue Adresse des Groovy-Forums ist: http://codekicker.de/fragen/themen/groovy.


Shiro - Authentifizierungsinformationen auslesen

everd - 06.09.2010 17:50
Hallo zusammen

Nun habe ich Shiro dank Hilfe aus dem Forum zum Laufen gebracht :-)

Ein Punkt gibt mir allerdings noch immer ein Rätsel auf:
Wie kann ich, nachdem ein User sich eingeloggt hat, auf seine Informationen, wie z.B. den Usernamen zugreiffen?
Und welche Informationen über den eingeloggten User sind verfügbar und wo sind sie gespeichert (Session?)?

Hintergrund der Frage:
Ich möchte einem User alle Objekte, welche auf ihn referenzieren, anzeigen (z.B. alle Projekte, bei denen der eingeloggte User Projektleiter ist).

In einer gsp-Seite würde ich mit dem Tag "<shiro:principal />" auf den Usernamen zugreifen. Wie mache ich das in einem Controller?



Danke und Gruss
Yves


Re: Shiro - Authentifizierungsinformationen auslesen

saurier - 06.09.2010 19:15
Hallo Yves,

Zitat

In einer gsp-Seite würde ich mit dem Tag "<shiro:principal />" auf den Usernamen zugreifen. Wie mache ich das in einem Controller?
so:
import org.apache.shiro.SecurityUtils
...
SecurityUtils.subject.principal


Gruß,
Christian


Re: Shiro - Authentifizierungsinformationen auslesen

everd - 09.09.2010 10:38
> so:
>
> import org.apache.shiro.SecurityUtils
> ...
> SecurityUtils.subject.principal

hm.... ich hoffe, ich stelle mich nicht all zu doof an.... aber:
Was ist "SecurityUtils.subject.principal"? Ein Array?

Ich kann auf keine Eigenschaft von ShiroUser zugreifen, wie z.B. mit "Project.findByUsernmae(SecurityUtils.subject.principal) "....
Ich bekomme immer folgenden Fehler:
No signature of method: ch.project.Project.findByPluser() is applicable for argument types: (java.lang.String) values: [administrator] Possible solutions: findByPluser(java.util.List)

Danke schon mal für die Geduld und Hilfe :-)

Gruss
Yves


Re: Shiro - Authentifizierungsinformationen auslesen

milkyman - 09.09.2010 12:16
Ich weiß zwar nicht, was Shiro ist, aber der SecurityUtils.subject.principal liefert dir einen String zurück, in dem "administrator" drin steht.
Dein finder will aber eine List übergeben bekommen.

Bye,
Horst


Re: Shiro - Authentifizierungsinformationen auslesen

saurier - 09.09.2010 12:50
Hallo Yves,

Zitat

Was ist "SecurityUtils.subject.principal"? Ein Array?

Normalerweise ist das einfach ein String, also der Username.

Zitat

Ich bekomme immer folgenden Fehler:
No signature of method: ch.project.Project.findByPluser() is applicable for argument types: (java.lang.String) values: [administrator] Possible solutions: findByPluser(java.util.List)

Nach dieser Fehlermeldung hat er den principal offenbar gefunden (administrator). Das Problem liegt
scheinbar in deiner "Project"-Klasse. Gibt es da denn einen String "pluser" ?

Gruß,
Christian


Re: Shiro - Authentifizierungsinformationen auslesen

everd - 09.09.2010 14:45
saurier schrieb:
-------------------------------------------------------
> Normalerweise ist das einfach ein String, also der
> Username.

Ok, alles klar. Ich dachte, das sein ein Array...

>
> Nach dieser Fehlermeldung hat er den principal
> offenbar gefunden (administrator). Das Problem
> liegt
> scheinbar in deiner "Project"-Klasse. Gibt es da
> denn einen String "pluser" ?

Dieser Fehler hat sich nun erledigt. Dadurch, dass ich dachte, dass ich ein Array zurückbekomme (siehe Frage oben), hat natürlich der dynamicfinder nicht funktioniert :-)

Besten Dank für die Hilfe!!

Gruss
Yves


Stelle deine Groovy-Frage jetzt!


Diese Seite zeigt den Thread "Shiro - Authentifizierungsinformationen auslesen" der ehemaligen Webseite groovy-forum.de, welche durch einen Serverunfall zerstört wurde. codekicker.de hat viele Konversationen über die beliebte Programmiersprache Groovy und zugehörige Frameworks wie das Grails-Framework retten können.

Hast Du eine Frage zum Thema Groovy, Grails oder allgemein Java? Viele ehemalige groovy-forum.de Mitglieder beantworten dir auf codekicker.de deine Frage! Stelle jetzt eine Frage!

Viele weitere Diskussionen zu Grails und Groovy befinden sich auf der Threadübersicht des alten groovy-forum.de.