Class AuthenticationFile
- java.lang.Object
-
- de.bsvrz.dav.daf.main.authentication.AuthenticationFile
-
- All Implemented Interfaces:
UserProperties
public final class AuthenticationFile extends java.lang.Object implements UserProperties
Klasse die eine Authentifizierungs-Datei ("passwd") einliest. Eine passwd-Datei besteht aus Schlüssel-Wert-Paaren (wie inProperties
beschrieben) wobei der Schlüssel ein Benutzername, optional gefolgt von einem "@"-Zeichen und einem Suffix ist, und der Wert entweder ein Klartextpasswort ist, oder ein binärer Login-Token (z.B. ein SRP-"x"-Wert, mit dem sich der Benutzer beim Datenverteiler authentifizieren kann, ohne dass das Passwort im Klartext in der Datei stehen muss) Ein solcher Token besitzt das Format "[XXXX]~~~~ [Hex-Daten]" wobei [XXXX] ein Authentifizierungsverfahren wie bspw. "SRP6" angibt. Als Suffix für den Benutzernamen sind möglich: - `@[Datenverteiler-Pid]` um das Passwort zur Anmeldung bei einem bestimmten Datenverteiler festzulegen - `@[Konfigurationsverantwortlicher-Pid]` um das Passwort festzulegen, mit dem ein Datenverteiler sich bei einer Konfiguration authentifiziert
-
-
Constructor Summary
Constructors Constructor Description AuthenticationFile(java.nio.file.Path authenticationFilePath)
Erstellt eine neue AuthenticationFile-Instanz
-
Method Summary
Modifier and Type Method Description ClientCredentials
getClientCredentials(java.lang.String userName, java.lang.String suffix)
Gibt ein Passwort oder Login-Token zu einem bestimmten Benutzer zurück-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface de.bsvrz.dav.daf.main.authentication.UserProperties
getClientCredentials
-
-
-
-
Method Detail
-
getClientCredentials
public ClientCredentials getClientCredentials(java.lang.String userName, java.lang.String suffix)
Gibt ein Passwort oder Login-Token zu einem bestimmten Benutzer zurück- Specified by:
getClientCredentials
in interfaceUserProperties
- Parameters:
userName
- Benutzernamesuffix
- Optionaler String, der spezifiziert, wo sich der Benutzer einloggen will. Beispielsweise kann ein Benutzer bei mehreren Datenverteilern unterschiedliche Namen vorgeben. In der Datei kann daher mit einem "@" getrennt an den Benutzernamen der "suffix" angehängt, werden. Dies kann z.B. die Pid des Datenverteilers sein.- Returns:
- Dem Benutzer (und ggf. Suffix) zugeordnetes Passwort (oder Login-Token), falls es in der Datei enthalten war. Sonst null.
-
-