Class NTLoginModule

  • All Implemented Interfaces:
    LoginModule


    public class NTLoginModule
    extends Object
    implements LoginModule
    LoginModule将用户的NT安全信息呈现为Principal的一些数字, Principal其与Subject相关联。

    该LoginModule识别调试选项。 如果在登录配置中设置为true,则调试消息将被输出到输出流System.out。

    该LoginModule还可以识别debugNative选项。 如果在登录配置中设置为true,则将从模块的本机组件调试消息将输出到输出流System.out。

    另请参见:
    LoginModule
    • 构造方法详细信息

      • NTLoginModule

        public NTLoginModule​()
    • 方法详细信息

      • initialize

        public void initialize​(Subject subject,
                               CallbackHandler callbackHandler,
                               Map<String,?> sharedState,
                               Map<String,?> options)
        初始化这个 LoginModule
        Specified by:
        initialize在接口 LoginModule
        参数
        subject - 要认证的 Subject
        callbackHandler - 用于与最终用户进行通信的CallbackHandler (例如,提示用户名和密码)。 这个特定的LoginModule只提取底层的NT系统信息,所以这个参数被忽略。
        sharedState - 共享 LoginModule状态。
        options - 在特定 LoginModule的登录 Configuration指定的选项。
      • login

        public boolean login​()
                      throws LoginException
        导入底层NT系统身份信息。
        Specified by:
        login在接口 LoginModule
        结果
        在所有情况下都是这样,因为这个 LoginModule不应该被忽略。
        异常
        FailedLoginException - 如果身份验证失败。
        LoginException - 如果这个 LoginModule无法执行认证。
      • commit

        public boolean commit​()
                       throws LoginException
        如果LoginContext的整体身份验证成功(相关的请求,REQUISITE,SUPPICIENT和可选LoginModules成功),则调用此方法。

        如果此LoginModule自己的身份验证尝试成功(通过检索通过login方法保存的私有状态进行检查),则此方法将一些数量Principal与位于Subject中的LoginModuleContext 如果此LoginModule自身的身份验证尝试失败,则此方法将删除原始保存的任何状态。

        Specified by:
        commit在接口 LoginModule
        结果
        如果此LoginModule自己的登录和提交尝试成功,则为true,否则为false。
        异常
        LoginException - 如果提交失败。
      • abort

        public boolean abort​()
                      throws LoginException
        如果LoginContext的整体身份验证失败,则调用此方法。 (相关要求,必要,有效和可选的LoginModules没有成功)。

        如果此LoginModule自己的身份验证尝试成功(通过检索由logincommit方法保存的私有状态检查),则此方法将清除最初保存的任何状态。

        Specified by:
        abort在接口 LoginModule
        结果
        如果此LoginModule自己的登录和/或提交尝试失败,则为false,否则为true。
        异常
        LoginException - 如果中止失败。
      • logout

        public boolean logout​()
                       throws LoginException
        注销用户。

        这种方法消除了NTUserPrincipalNTDomainPrincipalNTSidUserPrincipalNTSidDomainPrincipalNTSidGroupPrincipal s和NTSidPrimaryGroupPrincipal可能已通过加入commit方法。

        Specified by:
        logout在接口 LoginModule
        结果
        在所有情况下都是这样,因为这个 LoginModule不应该被忽略。
        异常
        LoginException - if the logout fails.