java.lang.Object
com.sun.security.auth.module.UnixLoginModule
- 所有已实现的接口:
LoginModule
此
LoginModule
导入用户的 Unix Principal
信息(UnixPrincipal
、UnixNumericUserPrincipal
和 UnixNumericGroupPrincipal
)并将它们与当前的 Subject
关联。
此 LoginModule 识别调试选项。如果在登录配置中设置为 true,调试消息将输出到输出流 System.out。
-
构造方法总结
构造方法 -
方法总结
-
构造方法详细信息
-
UnixLoginModule
public UnixLoginModule()创建一个UnixLoginModule
。
-
-
方法详情
-
initialize
public void initialize(Subject subject, CallbackHandler callbackHandler, Map <String , ?> sharedState, Map <String , ?> options) 初始化这个LoginModule
。- 指定者:
initialize
在接口LoginModule
中- 参数:
subject
- 要验证的Subject
。callbackHandler
- 一个CallbackHandler
用于与最终用户通信(例如,提示输入用户名和密码)。sharedState
- 共享LoginModule
状态。options
- 在登录Configuration
中为此特定的LoginModule
指定的选项。
-
login
验证用户(第一阶段)。此方法的实现尝试通过进行本机 Unix 系统调用来检索用户的 Unix
Subject
信息。- 指定者:
login
在接口LoginModule
中- 返回:
-
在所有情况下都是正确的(不应忽略此
LoginModule
)。 - 抛出:
FailedLoginException
- 如果尝试检索基础系统信息失败。LoginException
- 如果身份验证失败
-
commit
提交身份验证(第二阶段)。如果 LoginContext 的整体身份验证成功(相关的 REQUIRED、REQUISITE、SUFFICIENT 和 OPTIONAL LoginModules 成功),则调用此方法。
如果此 LoginModule 自己的身份验证尝试成功(成功导入 Unix 身份验证信息),则此方法将 Unix Principals 与当前绑定到
LoginModule
的Subject
相关联。如果此 LoginModule 的身份验证尝试失败,则此方法会删除最初保存的所有状态。- 指定者:
commit
在接口LoginModule
中- 返回:
- 如果此 LoginModule 自己的登录和提交尝试成功,则为 true,否则为 false。
- 抛出:
LoginException
- 如果提交失败
-
abort
中止身份验证(第二阶段)。如果 LoginContext 的整体身份验证失败,则调用此方法。 (相关的 REQUIRED、REQUISITE、SUFFICIENT 和 OPTIONAL LoginModules 没有成功)。
此方法清除最初保存为来自
login
和commit
方法的身份验证尝试的一部分的任何状态。- 指定者:
abort
在接口LoginModule
中- 返回:
- 如果此 LoginModule 自己的登录和/或提交尝试失败,则为 false,否则为 true。
- 抛出:
LoginException
- 如果中止失败
-
logout
注销用户此方法删除与
Subject
关联的 Principals。- 指定者:
logout
在接口LoginModule
中- 返回:
-
在所有情况下都是正确的(不应忽略此
LoginModule
)。 - 抛出:
LoginException
- 如果注销失败
-