2016-08-02 70 views
0

Ich bin ein absoluter Neuling in diesem gesamten Stapel, also entschuldige ich mich im Voraus, wenn das eine sehr dumme Frage ist.Benutzerdefinierte Attribute für Flatfile-Authentifizierung in CAS

Ich arbeite an der Einrichtung eines lokalen (Mock) CAS-Dienstes, so dass wir unsere Apps gegen ein Authentifizierungssystem testen können, das zumindest etwas ähnelt, das wir in unseren Staging-/Produktionsumgebungen haben.

Ich verwende https://github.com/ubc/vagrant-cas als Ausgangspunkt. Ich habe es geschafft, dies einzurichten durch cas.properties und deployerConfigContext.xml modifizieren, damit ich wirklich Gewohnheit führen Attribute, wenn sich ein Benutzer in. Dh

<bean id="attributeRepository" class="org.jasig.services.persondir.support.StubPersonAttributeDao"> 
    <property name="backingMap"> 
     <map> 
      <entry key="uid" value="uid" /> 
      <entry key="eduPersonAffiliation" value="eduPersonAffiliation" /> 
      <entry key="groupMembership" value="groupMembership" /> 
      <entry key="puid" value="12345678910" /> 
     </map> 
    </property> 
</bean> 

Das mit dem Standard kombiniert org.jasig.cas.authentication.handler.support.SimpleTestUsernamePasswordAuthenticationHandler" bedeutet, dass, wenn ich mit einem Benutzernamen anmelden und ein Passwort, das identisch ist (zB Benutzername 'admin' Passwort 'admin'), dann ist dieser Benutzer angemeldet und das Attribut puid wird mit dem Wert '12345678910' zurückgegeben (dieselbe PUID wird für jeden Benutzernamen/Passwort-Kombinator zurückgegeben).

(ich hatte die Attribute zu ermöglichen, in der App ‚Services Management‘ zurückgeschickt werden)

Was ich tatsächlich Notwendigkeit, mehrere Benutzer in der Lage sein zu haben, alle mit unterschiedlichen puid Werte. dh

Benutzername: Passwort: 1234

username2: password2: 5678

usw.

Ich habe bemerkt, ein org.jasig.cas.adaptors.generic.FileAuthenticationHandler ist aber das erlaubt nur für Benutzername :: Passwort und keine benutzerdefinierte Attribute . (so nah und doch so weit).

Ich bin weit weg von meiner Tiefe, ich bin kein Java-Programmierer und habe die Grenze meiner Google-Fu erreicht. Jede Hilfe, die mich in die richtige Richtung weist, würde sehr geschätzt werden.

+0

Zusätzlich muss es keine flache Datei sein. Ich bin glücklich, Benutzernamen/Passwort/custom-Attribute in einer XML-Datei irgendwo zu kodieren. Was auch immer funktioniert und ist am einfachsten. – RichardTape

+0

Ich nehme an, Sie verwenden CAS 3. dateibasiertes authn, wie Sie entdeckt haben, unterstützt noch keine benutzerdefinierten Attribute. Sie könnten daran interessiert sein, dass https://github.com/Unicon/cas-addons/wiki/Configuring-JSON-ComplexStubPersonAttributeDao –

+0

Beachten Sie auch, dass CAS 3 EOLed ist. –

Antwort