モジュール jdk.httpserver
パッケージ com.sun.net.httpserver

クラスBasicAuthenticator

java.lang.Object
com.sun.net.httpserver.Authenticator
com.sun.net.httpserver.BasicAuthenticator

public abstract class BasicAuthenticator extends Authenticator
BasicAuthenticatorは、HTTP基本認証の実装を提供します。 これはabstractクラスであり、各着信要求を検証するために呼び出されるcheckCredentials(String,String)の実装を提供するには、拡張する必要があります。
  • フィールド詳細

    • realm

      protected final String realm
      HTTP Basic認証レルム。
  • コンストラクタの詳細

    • BasicAuthenticator

      public BasicAuthenticator(String realm)
      指定されたHTTPレルムのBasicAuthenticatorを作成します。 Basic認証資格証明(ユーザー名とパスワード)は、プラットフォームdefault character setを使用してデコードされます。
      パラメータ:
      realm - HTTP Basic認証レルム
      例外:
      NullPointerException - レルムがnullの場合
      IllegalArgumentException - レルムが空の文字列の場合
    • BasicAuthenticator

      public BasicAuthenticator(String realm, Charset charset)
      指定されたHTTPレルムのBasicAuthenticatorを作成し、指定されたCharsetを使用してBasic認証資格証明(ユーザー名とパスワード)をデコードします。
      APIのノート:
      UTF-8の使用量はクライアントに送信されるため、クライアントから使用される可能性が高くなるため、推奨の文字セットです。
      パラメータ:
      realm - HTTP Basic認証レルム
      charset - クライアントからの受信資格証明をデコードするCharset
      例外:
      NullPointerException - レルムまたは文字セットがnullの場合
      IllegalArgumentException - レルムが空の文字列の場合
  • メソッドの詳細

    • getRealm

      public String getRealm()
      このBasicAuthenticatorが作成されたレルムを返します。
      戻り値:
      オーセンティケータのレルム文字列
    • authenticate

      public Authenticator.Result authenticate(HttpExchange t)
      次のクラスからコピーされた説明: Authenticator
      各着信リクエストを認証するために呼び出されます。 実装は、必要に応じてAuthenticator.FailureAuthenticator.SuccessまたはAuthenticator.Retryオブジェクトを返す必要があります:
      • Failureは、認証は完了したが、資格証明が無効なために失敗したことを意味します。
      • Successは、認証が成功し、Authenticator.Success.getPrincipal()をコールしてユーザーを表すPrincipalオブジェクトを取得できることを意味します。
      • Retryは、別のHTTP exchangeが必要であることを意味します。 クライアントに返送する必要があるレスポンス・ヘッダーは、指定されたHttpExchangeで設定されます。 返されるレスポンス・コードは、Retryオブジェクトで指定する必要があります。 Retryが複数回発生する場合があります。
        定義:
        authenticate 、クラス:  Authenticator
        パラメータ:
        t - 認証が呼び出されるHttpExchange
        戻り値:
        結果
      • checkCredentials

        public abstract boolean checkCredentials(String username, String password)
        このオーセンティケータ・レルムのコンテキストで指定された名前とパスワードを検証するために、着信リクエストごとにコールされます。 資格のキャッシュは、このメソッドの実装によって行う必要があります。
        パラメータ:
        username - 要求からのユーザー名
        password - 要求からのパスワード
        戻り値:
        資格が有効な場合はtrue、そうでない場合はfalse