クラスAuthProvider

すべての実装されたインタフェース:
Serializable, Cloneable, Map<Object,Object>

public abstract class AuthProvider extends Provider
このクラスは、特定のプロバイダに対するログイン・メソッドとログアウト・メソッドを定義します。

呼出し元はloginを直接呼び出すことができますが、特定の処理に先だってログインを実行する必要があるとプロバイダが判断した場合には、プロバイダ自身が呼出し元に代わってloginを呼び出します。

導入されたバージョン:
1.5
関連項目:
  • ネストされたクラスのサマリー

    Providerクラスで宣言されたネストされたクラス/インタフェース

    Provider.Service
    修飾子と型
    クラス
    説明
    static class 
    特定のセキュリティ・サービスを記述したものです。
  • フィールドのサマリー

    クラスプロパティで宣言されたフィールド

    defaults
    修飾子と型
    フィールド
    説明
    protected Properties
    プロパティ・リストにないキーのデフォルト値を持つプロパティ・リストです。
  • コンストラクタのサマリー

    コンストラクタ
    修飾子
    コンストラクタ
    説明
    protected
    AuthProvider(String name, double version, String info)
    非推奨。
    代わりにAuthProvider(String, String, String)を使用してください。
    protected
    AuthProvider(String name, String versionStr, String info)
    指定された名前、バージョン文字列および情報を持つプロバイダを構築します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    abstract void
    login(Subject subject, CallbackHandler handler)
    このプロバイダにログインします。
    abstract void
    このプロバイダからログアウトします。
    abstract void
    CallbackHandlerを設定します。

    クラス Providerで宣言されたメソッド

    clear, compute, computeIfAbsent, computeIfPresent, configure, entrySet, forEach, getInfo, getName, getOrDefault, getService, getServices, getVersion, getVersionStr, isConfigured, keySet, load, merge, put, putAll, putIfAbsent, putService, remove, remove, removeService, replace, replace, replaceAll, toString, values
    修飾子と型
    メソッド
    説明
    void
    このProviderをクリアして、Providerによって実装された機能の検索に使用されるプロパティが含まれないようにします。
    compute(Object key, BiFunction<? super Object, ? super Object, ? extends Object> remappingFunction)
    指定されたキーと現在マップされている値に対するマッピングの計算を試みます(現在のマッピングが存在しない場合はnull)。
    computeIfAbsent(Object key, Function<? super Object, ? extends Object> mappingFunction)
    指定されたキーがまだ値に関連付けられていない(またはnullにマップされている)場合、指定されたマッピング関数を使用してその値の計算を試行し、nullでない場合はそれをこのマップに入力します。
    computeIfPresent(Object key, BiFunction<? super Object, ? super Object, ? extends Object> remappingFunction)
    指定されたキーの値が存在していてnull以外の場合、キーと現在マップされている値から新しいマッピングの計算を試みます。
    configure(String configArg)
    指定された構成引数をこのProviderインスタンスに適用し、構成されたProviderを返します。
    このProviderに含まれるプロパティ・エントリの変更不可能なSetビューを返します。
    void
    forEach(BiConsumer<? super Object, ? super Object> action)
    このマップのすべてのエントリの処理が完了するかアクションから例外がスローされるまで、各エントリに対して指定されたアクションを実行します。
    Providerおよびそのサービスの人間が読める説明を返します。
    このProviderの名前を返します。
    getOrDefault(Object key, Object defaultValue)
    指定されたキーがマップされている値を返します。このマップにそのキーのマッピングが含まれていない場合はdefaultValueを返します。
    getService(String type, String algorithm)
    指定されたタイプの指定されたアルゴリズムまたは別名に対するこのProviderの実装を記述したサービスを取得します。
    このProviderでサポートされているすべてのサービスの変更不可能なセットを取得します。
    double
    非推奨。
    代わりにProvider.getVersionStr()を使用してください。
    このProviderのバージョン文字列を返します。
    boolean
    このProviderインスタンスが構成されているかどうかを確認します。
    このProviderに含まれるプロパティ・キーの変更不可のSetビューを返します。
    void
    load(InputStream inStream)
    入力ストリームからキーと要素が対になったプロパティ・リストを読み込みます。
    merge(Object key, Object value, BiFunction<? super Object, ? super Object, ? extends Object> remappingFunction)
    指定されたキーがまだ値に関連付けられていないか、nullに関連付けられている場合は、指定された値に関連付けられます。
    put(Object key, Object value)
    keyプロパティが、指定されたvalueを持つように設定します。
    void
    putAll(Map<?,?> t)
    指定したマップからこのProviderにすべてのマッピングをコピーします。
    putIfAbsent(Object key, Object value)
    指定されたキーがまだ値に関連付けられていない(または、nullにマップされている)場合は、それを指定された値に関連付けてnullを返します。それ以外の場合は、現在の値を返します。
    protected void
    サービスを追加します。
    keyプロパティとそれに対応するvalueを削除します。
    boolean
    remove(Object key, Object value)
    指定された値に指定されたキーが現在マッピングされている場合にのみ、そのキーのエントリを削除します。
    protected void
    以前にputService()を使用して追加されたサービスを削除します。
    replace(Object key, Object value)
    指定されたキーがなんらかの値に現在マッピングされている場合にのみ、そのキーのエントリを置換します。
    boolean
    replace(Object key, Object oldValue, Object newValue)
    指定されたキーが指定された値に現在マッピングされている場合にのみ、そのキーのエントリを置換します。
    void
    replaceAll(BiFunction<? super Object, ? super Object, ? extends Object> function)
    すべてのエントリが処理されるか、または関数が例外をスローするまで、エントリ・セット・イテレータによってエントリが返される順に、各エントリの値を、そのエントリで指定された関数を呼び出した結果で置換します。
    このProviderの名前とバージョン文字列を含む文字列を返します。
    このProviderに含まれるプロパティ値の変更不可の収集ビューを返します。

    クラスプロパティで宣言されたメソッド

    getProperty, getProperty, list, list, load, loadFromXML, propertyNames, save, setProperty, store, store, storeToXML, storeToXML, storeToXML, stringPropertyNames
    修飾子と型
    メソッド
    説明
    指定されたキーを持つプロパティを、プロパティ・リストから探します。
    getProperty(String key, String defaultValue)
    指定されたキーを持つプロパティを、プロパティ・リストから探します。
    void
    指定された出力ストリームに、プロパティ・リストを出力します。
    void
    指定された出力ストリームに、プロパティ・リストを出力します。
    void
    load(Reader reader)
    プロパティ・リスト(キーと要素のペア)を入力文字ストリームから単純な行指向形式で読み込みます。
    void
    指定された入力ストリーム上のXMLドキュメントにより表されるすべてのプロパティを、このプロパティ表にロードします。
    メイン・プロパティ・リストに同じ名前のキーが見つからない場合は、デフォルトのプロパティ・リストにある個別のキーを含む、このプロパティ・リストにあるすべてのキーの列挙を返します。
    void
    save(OutputStream out, String comments)
    非推奨。
    プロパティ・リストの保存中にI/Oエラーが発生した場合、このメソッドはIOExceptionをスローしません。
    setProperty(String key, String value)
    Hashtableメソッドputをコールします。
    void
    store(OutputStream out, String comments)
    このProperties表内のプロパティ・リスト(キーと要素のペア)を、load(InputStream)メソッドを使用してProperties表にロードするのに適した形式で出力ストリームに書き込みます。
    void
    store(Writer writer, String comments)
    このProperties表内のプロパティ・リスト(キーと要素のペア)を、load(Reader)メソッドを使用するのに適した形式で出力文字ストリームに書き込みます。
    void
    この表に含まれるすべてのプロパティを表すXMLドキュメントを発行します。
    void
    storeToXML(OutputStream os, String comment, String encoding)
    この表に含まれるすべてのプロパティを表すXMLドキュメントを、指定されたエンコーディングを使用して発行します。
    void
    storeToXML(OutputStream os, String comment, Charset charset)
    この表に含まれるすべてのプロパティを表すXMLドキュメントを、指定されたエンコーディングを使用して発行します。
    キーとそれに対応する値が文字列であるこのプロパティ・リストから変更不可能なキー・セットを返します。メイン・プロパティ・リストから同じ名前のキーがまだ見つからない場合は、デフォルト・プロパティ・リストに個別のキーを含めます。

    クラス Hashtableで宣言されたメソッド

    clone, contains, containsKey, containsValue, elements, equals, get, hashCode, isEmpty, keys, rehash, size
    修飾子と型
    メソッド
    説明
    ハッシュ表のコピーを作成します。
    boolean
    指定された値にマップされているキーが、ハッシュ表にあるかどうかを判定します。
    boolean
    指定されたオブジェクトが、ハッシュ表のキーかどうかを判定します。
    boolean
    このハッシュ表が1つまたは複数のキーをこの値にマッピングする場合にtrueを返します。
    ハッシュ表にある値のリストを返します。
    boolean
    Mapインタフェースでの定義に従って、指定されたObjectとこのMapを比較して等しいかどうかを判定します。
    get(Object key)
    指定されたキーがマップされている値を返します。そのキーのマッピングがこのマップに含まれていない場合はnullを返します。
    int
    Mapインタフェースの定義に従って、このMapのハッシュ・コード値を返します。
    boolean
    値にマップされているキーが、ハッシュ表にあるかどうかを判定します。
    ハッシュ表にあるキーのリストを返します。
    protected void
    ハッシュ表の容量を増やし、それを内部的に再編成して、エントリを調整してアクセスをより効率的にします。
    int
    ハッシュ表にあるキーの数を返します。

    クラスオブジェクトで宣言されたメソッド

    finalize, getClass, notify, notifyAll, wait, wait, wait
    修飾子と型
    メソッド
    説明
    protected void
    削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
    最終決定は非推奨であり、将来のリリースで削除される可能性があります。
    final Class<?>
    このObjectの実行時クラスを返します。
    final void
    このオブジェクトのモニターで待機中のスレッドを1つ再開します。
    final void
    このオブジェクトのモニターで待機中のすべてのスレッドを再開します。
    final void
    現在のスレッドが目覚めるまで待機します。通常、notifiedまたはinterruptedです。
    final void
    wait(long timeoutMillis)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
    final void
    wait(long timeoutMillis, int nanos)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
  • コンストラクタの詳細

    • AuthProvider

      @Deprecated(since="9") protected AuthProvider(String name, double version, String info)
      非推奨。
      代わりにAuthProvider(String, String, String)を使用してください。
      指定された名前、バージョン番号、および情報を使用してプロバイダを構築します。
      パラメータ:
      name - プロバイダの名前。
      version - プロバイダのバージョン番号。
      info - プロバイダとそのサービスの記述。
    • AuthProvider

      protected AuthProvider(String name, String versionStr, String info)
      指定された名前、バージョン文字列および情報を持つプロバイダを構築します。
      パラメータ:
      name - プロバイダの名前。
      versionStr - プロバイダのバージョン文字列。
      info - プロバイダとそのサービスの記述。
      導入されたバージョン:
      9
  • メソッドの詳細

    • login

      public abstract void login(Subject subject, CallbackHandler handler) throws LoginException
      このプロバイダにログインします。

      プロバイダは、CallbackHandlerを使ってPINなどの認証情報を呼出し元から取得します。 呼出し元がこのメソッドにnullハンドラを渡した場合、プロバイダはsetCallbackHandlerメソッドで設定されたハンドラを使用します。 そのメソッド経由でハンドラが設定されていなかった場合、プロバイダはauth.login.defaultCallbackHandlerセキュリティ・プロパティを照会することで、デフォルト・ハンドラ実装の完全指定クラス名を取得します。 そのセキュリティ・プロパティが設定されていなかった場合、認証情報を取得するための別の方法がそのプロバイダに備わっているものと見なされます。

      パラメータ:
      subject - Subject。これには、認証用の主体や資格を含めることができる。認証の正常完了後に、主体や資格を追加することもできる。 このパラメータはnullになる可能性がある。
      handler - 認証情報を呼出し元から取得するために、このプロバイダによって使用されるCallbackHandlernullを設定できる
      スロー:
      IllegalStateException - プロバイダが構成を必要とし、Provider.configure(String)がコールされていない場合
      LoginException - ログイン処理が失敗した場合
    • logout

      public abstract void logout() throws LoginException
      このプロバイダからログアウトします。
      スロー:
      IllegalStateException - プロバイダが構成を必要とし、Provider.configure(String)がコールされていない場合
      LoginException - ログアウト処理が失敗した場合
    • setCallbackHandler

      public abstract void setCallbackHandler(CallbackHandler handler)
      CallbackHandlerを設定します。

      loginメソッドにハンドラが渡されなかった場合、プロバイダはこのハンドラを使用します。 また、プロバイダ自身が呼出し元に代わってloginを呼び出す場合にも、プロバイダはこのハンドラを使用します。 いずれにしても、このメソッド経由でハンドラが設定されていなかった場合、プロバイダはauth.login.defaultCallbackHandlerセキュリティ・プロパティを照会することで、デフォルト・ハンドラ実装の完全指定クラス名を取得します。 そのセキュリティ・プロパティが設定されていなかった場合、認証情報を取得するための別の方法がそのプロバイダに備わっているものと見なされます。

      パラメータ:
      handler - 認証情報を取得するためのCallbackHandlernullを設定できる
      スロー:
      IllegalStateException - プロバイダが構成を必要とし、Provider.configure(String)がコールされていない場合