Class ClientCredentials
java.lang.Object
de.bsvrz.dav.daf.main.authentication.ClientCredentials
public abstract class ClientCredentials
extends java.lang.Object
Clientseitige Zugangsdaten zum Login beim Datenverteiler oder ähnlich.
Die Zugangsdaten bestehen entweder aus Benutzername und Passwort oder aus einem Login-Token, welcher ein binärer Code ist, bit dem sich der Client beim Server ausweisen kann ohne das Passwort im Klartext zu kennen. So ein Token kann beispielsweise das bei SRP6 verwendete x sein, mit dem der Client sich beim Server ausweisen kann, ohne dass das Klartextpasswort gespeichert oder eingegeben werden muss.
-
Method Summary
Modifier and Type Method Description abstract char[]
getPassword()
Gibt das Passwort zurückabstract byte[]
getTokenData()
Gibt den binären Schlüssel zurückabstract java.lang.String
getTokenType()
Gibt den Typ des binären Schlüssels zurück, beispielsweise "SRP6"abstract boolean
hasPassword()
Gibttrue
zurück, wenn es sich um einen Passwort-Login handeltstatic ClientCredentials
ofPassword(char[] password)
Erstellt eine Instanz, die ein Passwort speichertstatic ClientCredentials
ofString(java.lang.String s)
Erstellt eine Instanz aus einem serialisierten String (kompatibel mittoString()
static ClientCredentials
ofToken(byte[] tokenData, java.lang.String tokenType)
Erstellt eine Instanz, die ein Login-Token darstellt.abstract java.lang.String
toString()
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Method Details
-
ofPassword
Erstellt eine Instanz, die ein Passwort speichert- Parameters:
password
- Passwort- Returns:
- Instanz oder null falls das angegebene Passwort null ist oder eine Länge von 0 hat.
-
ofToken
Erstellt eine Instanz, die ein Login-Token darstellt. Ein Token ist ein (binärer) Code mit dem sich der Client statt einem Passwort authentifizieren kann- Parameters:
tokenData
- Binäre Daten (!= null)tokenType
- Art des Tokens (z.B. SRP6 für ein SRP-"x", != null)- Returns:
- Login-Token
-
ofString
Erstellt eine Instanz aus einem serialisierten String (kompatibel mittoString()
- Parameters:
s
- Passwort als String oder als String serialisierter Token (wie in Authentifizierungsdatei), z. B. "geheim" oder "SRP6~~~~ abcde"- Returns:
- Instanz oder null falls das Passwort null ist oder eine Länge von 0 hat.
-
getPassword
public abstract char[] getPassword()Gibt das Passwort zurück- Returns:
- das Passwort
- Throws:
java.lang.UnsupportedOperationException
- falls es sich um einen Token-Login handelt (hasPassword()
gibt false zurück)
-
getTokenData
public abstract byte[] getTokenData()Gibt den binären Schlüssel zurück- Returns:
- den Schlüssel
- Throws:
java.lang.UnsupportedOperationException
- falls es sich um einen Passwort-Login handelt (hasPassword()
gibt true zurück)
-
getTokenType
public abstract java.lang.String getTokenType()Gibt den Typ des binären Schlüssels zurück, beispielsweise "SRP6"- Returns:
- den Schlüssel
- Throws:
java.lang.UnsupportedOperationException
- falls es sich um einen Passwort-Login handelt (hasPassword()
gibt true zurück)
-
hasPassword
public abstract boolean hasPassword()Gibttrue
zurück, wenn es sich um einen Passwort-Login handelt- Returns:
true
, wenn es sich um einen Passwort-Login handelt, sonst (bei einem Token-Login)false
-
toString
public abstract java.lang.String toString()- Overrides:
toString
in classjava.lang.Object
-