模块  java.base
软件包  java.security

Class AuthProvider

  • 实现的所有接口
    SerializableCloneableMap<Object,​Object>

    public abstract class AuthProvider
    extends Provider
    此类定义提供程序的登录和注销方法。

    虽然呼叫者可以直接调用login ,但如果确定必须在某些操作之前执行登录,则提供者也可以代表呼叫者调用login

    从以下版本开始:
    1.5
    另请参见:
    Serialized Form
    • 构造方法详细信息

      • AuthProvider

        @Deprecated(since="9")
        protected AuthProvider​(String name,
                               double version,
                               String info)
        Deprecated.
        构造具有指定名称,版本号和信息的提供程序。
        参数
        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 -所述 CallbackHandler使用此提供以获得来自呼叫者的认证信息,其可以是 null
        异常
        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方法返回的值