所有类
java.security
类 AuthProvider
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
此类定义 provider 的登录和注销方法。
调用方可以直接调用 login
,但如果 provider 确定必须在某些特定操作前执行登录,则其也可以代表调用方调用 login
。
-
从以下版本开始:
-
1.5
-
另请参见:
-
序列化表格
从类 java.security.Provider 继承的方法 |
clear, entrySet, getInfo, getName, getService, getServices, getVersion, keySet, load, put, putAll, putService, remove, removeService, toString, values |
从类 java.util.Properties 继承的方法 |
getProperty, getProperty, list, list, loadFromXML, propertyNames, save, setProperty, store, storeToXML, storeToXML |
从类 java.util.Hashtable 继承的方法 |
clone, contains, containsKey, containsValue, elements, equals, get, hashCode, isEmpty, keys, rehash, size |
AuthProvider
protected AuthProvider(String name,
double version,
String info)
-
构造具有指定名称、版本号和信息的 provider。
-
参数:
-
name
- provider 的名称。
-
version
- provider 的版本号。
-
info
- provider 及其服务的描述。
login
public abstract void login(Subject subject,
CallbackHandler handler)
throws LoginException
-
登录到此 provider 中。
provider 依靠 CallbackHandler
从调用方(例如,PIN)获取身份验证信息。如果调用方向此方法传递为 null
的 provider,则 provider 将使用在 setCallbackHandler
方法中设置的处理程序。如果在该方法中没有设置处理程序,则 provider 将查询 auth.login.defaultCallbackHandler 安全属性,以获取默认处理程序实现的完全限定类名称。如果没有设置安全属性,则假定 provider 具有获取身份验证信息的替代方法。
-
-
参数:
-
subject
- Subject
,它可能包含用于身份验证的主体/凭据,或者可以在成功完成身份验证后利用其他主体/凭据填充。此参数可以为 null
。
-
handler
- 此 provider 用于从调用方获取身份验证信息的 CallbackHandler
,它可能为 null
-
抛出:
-
LoginException
- 如果登录操作失败
-
SecurityException
- 如果调用方不传递对 SecurityPermission("authProvider.name")
(其中 name 为此 provider 的 getName
方法所返回的值)的安全检查。
logout
public abstract void logout()
throws LoginException
-
在此 provider 中注销。
-
-
抛出:
-
LoginException
- 如果注销操作失败
-
SecurityException
- 如果调用方不传递 SecurityPermission("authProvider.name")
(其中 name 为此 provider 的 getName
方法所返回的值)的安全检查。
setCallbackHandler
public abstract void setCallbackHandler(CallbackHandler handler)
-
设置
CallbackHandler
。
如果没有传递给 login
方法一个处理程序,则 provider 使用此处理程序。如果 provider 代表调用方调用 login
,则其也使用此处理程序。在任何一种情况下,如果没有通过此方法中设置处理程序,则 provider 将查询 auth.login.defaultCallbackHandler 安全属性,以获取默认处理程序实现的完全限定类名称。如果没有设置安全属性,则假定 provider 具有获取身份验证信息的替代方法。
-
-
参数:
-
handler
- 用于获取身份验证信息(可以为 null
)的 CallbackHandler
-
抛出:
-
SecurityException
- 如果调用方不传递 SecurityPermission("authProvider.name")
(其中 name 为此 provider 的 getName
方法所返回的值)的安全检查。
所有类