Klasse DBUtilsCrypto

java.lang.Object
de.svws_nrw.data.crypto.DBUtilsCrypto

public final class DBUtilsCrypto extends Object
Diese Klasse stellt Hilfsmethoden für den Zugriff auf Informationen von Schülern zur Verfügung.
  • Methodendetails

    • getOrCreateSchuelerCredentials

      public static DTOCredentials getOrCreateSchuelerCredentials(DBEntityManager conn, long id) throws ApiOperationException
      Ermittelt die Credentials des Schülers aus der Datenbank ein und gibt diese zurück. Sollten noch keine in der Datenbank vorhanden sein, so werden neue in der Datenbank angelegt. Dabei wird ein Benutzename, ein Benutzer-Pseudonym, ein Initialkennwort und der zugehörige Password-Hash erzeugt. Für die Kommunikation mit der Datenbank wird die angegebene Verbindung genutzt, welche eine aktive Transaktion haben muss.
      Parameter:
      conn - die Datenbank-Verbindung
      id - die ID des Schülers
      Gibt zurück:
      die Credentials
      Löst aus:
      ApiOperationException - falls ein Fehler auftritt
    • addRSAKeyPair

      public static void addRSAKeyPair(DBEntityManager conn, DTOCredentials cred) throws ApiOperationException
      Fügt einen RSA-Schlüsselpaar zu den angebenen Credentials hinzu, sofern noch keines vorhanden ist, und persistiert dieses mithilfe der angegebenen Verbindung in der Datenbank. Die Verbindung muss dabei eine aktive Transaktion haben.
      Parameter:
      conn - die Datenbankverbindung
      cred - die anzupassenden Credentials
      Löst aus:
      ApiOperationException - im Fehlerfall
    • addAESKey

      public static void addAESKey(DBEntityManager conn, DTOCredentials cred) throws ApiOperationException
      Fügt einen AES-Schlüssel zu den angebenen Credentials hinzu, sofern noch keiner vorhanden ist, und persistiert diesen mithilfe der angegebenen Verbindung in der Datenbank. Die Verbindung muss dabei eine aktive Transaktion haben.
      Parameter:
      conn - die Datenbankverbindung
      cred - die anzupassenden Credentials
      Löst aus:
      ApiOperationException - im Fehlerfall