Class UnixLoginModule

  • 实现的所有接口
    LoginModule

    public class UnixLoginModule
    extends Object
    implements LoginModule
    LoginModule导入用户的Unix Principal信息( UnixPrincipalUnixNumericUserPrincipal ,和UnixNumericGroupPrincipal ),并将其与当前的关联Subject

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

    • 构造方法详细信息

      • UnixLoginModule

        public UnixLoginModule()
    • 方法详细信息

      • initialize

        public void initialize​(Subject subject,
                               CallbackHandler callbackHandler,
                               Map<String,​?> sharedState,
                               Map<String,​?> options)
        初始化这个 LoginModule
        Specified by:
        initialize在界面 LoginModule
        参数
        subject - 要验证的 Subject
        callbackHandler - 用于与最终用户通信的 CallbackHandler (例如,提示输入用户名和密码)。
        sharedState - 共享 LoginModule状态。
        options - 此特定 LoginModule的登录名 Configuration指定的选项。
      • login

        public boolean login()
                      throws LoginException
        验证用户(第一阶段)。

        此方法的实现尝试通过进行本机Unix系统调用来检索用户的Unix Subject信息。

        Specified by:
        login in interface LoginModule
        结果
        在所有情况下都是如此(不应忽略此 LoginModule )。
        异常
        FailedLoginException - 如果尝试检索基础系统信息失败。
        LoginException - 如果身份验证失败
      • commit

        public boolean commit()
                       throws LoginException
        提交身份验证(第二阶段)。

        如果LoginContext的整体身份验证成功(相关的REQUIRED,REQUISITE,SUFFICIENT和OPTIONAL LoginModules成功),则调用此方法。

        如果此LoginModule自己的身份验证尝试成功(导入Unix身份验证信息成功),则此方法将Unix Principals与当前与Subject绑定的LoginModule 如果此LoginModule的身份验证尝试失败,则此方法将删除最初保存的任何状态。

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

        public boolean abort()
                      throws LoginException
        中止身份验证(第二阶段)。

        如果LoginContext的整体身份验证失败,则调用此方法。 (相关的必需,要求,充足和可选的LoginModule没有成功)。

        此方法清除最初作为logincommit方法的身份验证尝试的一部分保存的任何状态。

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

        public boolean logout()
                       throws LoginException
        注销用户

        此方法删除与Subject关联的Subject

        Specified by:
        logout ,接口 LoginModule
        结果
        在所有情况下 LoginModule true(不应忽略此 LoginModule )。
        异常
        LoginException - 如果注销失败