- Wählen Sie im Menü File > New > Other....
Wählen Sie im folgenden Dialog Authentication Provider und klicken Sie Next >.
- Geben Sie bei Name die Bezeichnung für Ihren Authentication Provider an, z.B. ExampleAuthenticationProvider.
Zugangsdaten via LDAP
- Selektieren Sie bei Provider type > LDAP.
Wählen Sie im folgenden Dialog Authentication Provider und klicken Sie Next >.
Zugangsdaten via Datenbank
Als Datenquelle kann eine Datenbanktabelle verwendet werden. Das Datenmodell dafür kann frei defniert werden, lediglich die Datenfelder USERNAME und PASSWORD müssen vorhanden sein.
- Selektieren Sie bei Provider type > Database.
Klicken Sie Next >.
- Wählen Sie bei Entity ein bereits existierendes Entity für die Benutzerdaten aus oder klicken Sie auf New Entity um ein neues Entity User mit den Attributen username vom Typ String sowie password vom Typ byte anzulegen.
- Wählen Sie bei Settings den Verschlüsselungs-Algorythmus aus, z.B. MD5.
- Klicken Sie auf Finish.
Ergebnis:
Project Management > Entities - Es wurde die Entity-Klasse User.java mit den Attributen username und password generiert oder durch Auswahl ein entsprechendes verwendet.
Project Management > Data Access - Es wurde die Entity-Klasse UserDAO.java generiert oder durch Auswahl ein entsprechendes verwendet.
Project Management > Business Objects - Es wurde die Klasse ExampleAuthenticationProvider.java generiert.
package com.company.example.business; import com.company.example.entities.User; import com.xdev.security.authentication.Authenticator; import com.xdev.security.authentication.AuthenticatorProvider; import com.xdev.security.authentication.CredentialsUsernamePassword; import com.xdev.security.authentication.jpa.JPAAuthenticator; import com.xdev.security.authentication.jpa.HashStrategy.MD5; public class ExampleAuthenticationProvider implements AuthenticatorProvider<CredentialsUsernamePassword, CredentialsUsernamePassword> { private static ExampleAuthenticationProvider INSTANCE; public static ExampleAuthenticationProvider getInstance() { if (INSTANCE == null) { INSTANCE = new ExampleAuthenticationProvider(); } return INSTANCE; } private JPAAuthenticator authenticator; private ExampleAuthenticationProvider() { } @Override public Authenticator<CredentialsUsernamePassword, CredentialsUsernamePassword> provideAuthenticator() { if (this.authenticator == null) { this.authenticator = new JPAAuthenticator(User.class); this.authenticator.setHashStrategy(new MD5()); } return this.authenticator; } }
Neues User Entity anlegen
- Klicken Sie auf New Entity um ein neues Entity User anzulegen.
- Übernehmen Sie im folgenden Entity Assistenten bei Entity > Name > User sowie bei Data Access Object > Name > UserDAO.
- Klicken Sie auf Finish.
Bestehendes User Entity auswählen
- Wählen Sie bei Entity ein bereits existierendes Entity für die Benutzerdaten aus oder klicken Sie auf New Entity um ein neues Entity User anzulegen.
- Wählen Sie bei Settings den Verschlüsselungs-Algorythmus aus, z.B. MD5.
- Klicken Sie auf Finish.
Als Datenquelle kann eine Datenbanktabelle verwendet werden. Das Datenmodell dafür kann frei defniert werden, lediglich die Datenfelder USERNAME und PASSWORD müssen vorhanden sein.
- Selektieren Sie bei Provider type > Database.
Klicken Sie Next >.