java.lang.Object
java.util.Dictionary<K,V>
java.util.Hashtable<Object,Object>
java.util.Properties
java.security.Provider
java.security.AuthProvider
- すべての実装されたインタフェース:
Serializable
,Cloneable
,Map<Object,
Object>
public abstract class AuthProvider extends Provider
このクラスは、特定のプロバイダに対するログイン・メソッドとログアウト・メソッドを定義します。
呼出し元はlogin
を直接呼び出すことができますが、特定の処理に先だってログインを実行する必要があるとプロバイダが判断した場合には、プロバイダ自身が呼出し元に代わってlogin
を呼び出します。
- 導入されたバージョン:
- 1.5
- 関連項目:
-
ネストされたクラスのサマリー
クラス java.security.Providerで宣言されたネストされたクラス/インタフェース
Provider.Service
-
フィールドのサマリー
クラス java.util.Propertiesで宣言されたフィールド
defaults
-
コンストラクタのサマリー
修飾子コンストラクタ説明protected
AuthProvider
(String name, double version, String info) 非推奨。protected
AuthProvider
(String name, String versionStr, String info) 指定された名前、バージョン文字列、および情報を持つプロバイダを構築します。 -
メソッドのサマリー
修飾子と型メソッド説明abstract void
login
(Subject subject, CallbackHandler handler) このプロバイダにログインします。abstract void
logout()
このプロバイダからログアウトします。abstract void
setCallbackHandler
(CallbackHandler handler) CallbackHandler
を設定します。クラス java.security.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
クラス java.util.Propertiesで宣言されたメソッド
getProperty, getProperty, list, list, load, loadFromXML, propertyNames, save, setProperty, store, store, storeToXML, storeToXML, storeToXML, stringPropertyNames
-
コンストラクタの詳細
-
AuthProvider
@Deprecated(since="9") protected AuthProvider(String name, double version, String info) 非推奨。代わりにAuthProvider(String, String, String)
を使用してください。指定された名前、バージョン番号、および情報を使用してプロバイダを構築します。- パラメータ:
name
- プロバイダの名前。version
- プロバイダのバージョン番号。info
- プロバイダとそのサービスの記述。
-
AuthProvider
指定された名前、バージョン文字列、および情報を持つプロバイダを構築します。- パラメータ:
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
- 認証情報を呼出し元から取得するために、このプロバイダによって使用されるCallbackHandler
。null
を設定できる- 例外:
IllegalStateException
- プロバイダが構成を必要とし、Provider.configure(java.lang.String)
が呼び出されていない場合LoginException
- ログイン処理が失敗した場合SecurityException
- 呼出し側がSecurityPermission("authProvider.name")
のセキュリティ・チェックにパスしなかった場合。ここで、name
はこのプロバイダのgetName
メソッドの戻り値
-
logout
public abstract void logout() throws LoginExceptionこのプロバイダからログアウトします。- 例外:
IllegalStateException
- プロバイダが構成を必要とし、Provider.configure(java.lang.String)
が呼び出されていない場合LoginException
- ログアウト処理が失敗した場合SecurityException
- 呼出し側がSecurityPermission("authProvider.name")
のセキュリティ・チェックにパスしなかった場合。ここで、name
はこのプロバイダのgetName
メソッドの戻り値
-
setCallbackHandler
public abstract void setCallbackHandler(CallbackHandler handler) CallbackHandler
を設定します。login
メソッドにハンドラが渡されなかった場合、プロバイダはこのハンドラを使用します。 また、プロバイダ自身が呼出し元に代わってlogin
を呼び出す場合にも、プロバイダはこのハンドラを使用します。 いずれにしても、このメソッド経由でハンドラが設定されていなかった場合、プロバイダはauth.login.defaultCallbackHandlerセキュリティ・プロパティを照会することで、デフォルト・ハンドラ実装の完全指定クラス名を取得します。 そのセキュリティ・プロパティが設定されていなかった場合、認証情報を取得するための別の方法がそのプロバイダに備わっているものと見なされます。- パラメータ:
handler
- 認証情報を取得するためのCallbackHandler
。null
を設定できる- 例外:
IllegalStateException
- プロバイダが構成を必要とし、Provider.configure(java.lang.String)
が呼び出されていない場合SecurityException
- 呼出し側がSecurityPermission("authProvider.name")
のセキュリティ・チェックにパスしなかった場合。ここで、name
はこのプロバイダのgetName
メソッドの戻り値
-
AuthProvider(String, String, String)
を使用してください。