Authentifizierung fuer Modul jdk.httpserver
ulrich
2021-06-03 c7d492742233c73d4594e5ff3b3b448809d93209
src/de/uhilger/httpserver/auth/realm/Realm.java
@@ -1,5 +1,5 @@
/*
  jwtTest - JSON Web Token Testimplementierung
  http-auth - Authentication Extensions to jdk.httpserver
  Copyright (C) 2021  Ulrich Hilger
  This program is free software: you can redistribute it and/or modify
@@ -19,34 +19,14 @@
/**
 * A Realm is a "database" of usernames and passwords that identify valid 
 * users of an application (or a set of applications), plus an enumeration
 * of the list of roles associated with each valid user.
 * users of an application (or a set of applications), plus a list of roles
 * associated with each valid user.
 * 
 * You can think of roles as similar to groups in Unix-like operating systems, 
 * because access to specific web application resources is granted to all 
 * users possessing a particular role (rather than enumerating the list of 
 * associated usernames). A particular user can have any number of roles 
 * associated with their username.
 *
 *
 *
 *
 * Die Klasse Realm liefert Angaben zu Benutzern, die zu deren
 * Authentifizierung benoetigt werden.
 *
 * Ein Benutzer Authentisiert sich gegenueber einem System z.B. mit
 * seiner Benutzerkennung und einem Kennwort.
 *
 * Das System vergleicht die Authentisierungsangaben den Benutzers mit
 * Angaben, die fuer diesen Benutzer im System hinterlegt wurden. Stimmen die
 * Angaben ueberein, gibt das System eine Bestaetigung aus, die den Benutzer
 * authentifiziert.
 *
 * Diese Authentifizierungsbestaetigung dient zur Ausfuehrung
 * von Transaktionen, die nur von bestimmten Benutzern durchgefuehrt
 * werden duerfen. Anhand der Authentifizierungsbestaetigung kann das System
 * bei jeder Anfrage pruefen, ob der Benutzer, von dem die Anfrage kommt, der
 * Benutzer ist, der er vorgibt zu sein.
 * 
 * @author Ulrich Hilger
 * @version 1, 22.05.2021
@@ -56,16 +36,16 @@
  /**
   * Uberpruefen, ob die Benutzerkennung und das Kennwort gueltig sind.
   * 
   * @param user  der Benutzer
   * @param kennwort das Kennwort des Benutzers
   * @param userId  der Benutzer
   * @param password das Kennwort des Benutzers
   * @return true, wenn die Angaben stimmen, false wenn nicht
   */
  public boolean isValid(String userId, String kennwort);
  public boolean isValid(String userId, String password);
  
  /**
   * Pruefen, ob ein Benutzer eine Rolle hat
   * 
   * @param user der Benutzer
   * @param userId der Benutzer
   * @param roleId die Kennung der Rolle
   * @return  true, wenn der Benutzer die Rolle hat, false wenn nicht
   */