java.lang.Object
com.sun.security.auth.module.UnixLoginModule
- 所有已实现的接口:
-
LoginModule
这个
LoginModule导入用户的Unix Principal信息(UnixPrincipal、UnixNumericUserPrincipal和UnixNumericGroupPrincipal),并将它们与当前的Subject关联起来。
这个LoginModule识别调试选项。如果在登录配置中设置为true,调试消息将输出到输出流System.out。
-
Constructor Summary
Constructors -
Method Summary
-
Constructor Details
-
UnixLoginModule
public UnixLoginModule()创建一个UnixLoginModule。
-
-
Method Details
-
initialize
public void initialize(Subject subject, CallbackHandler callbackHandler, Map<String, ?> sharedState, Map<String, ?> options) 初始化这个LoginModule。- 指定者:
-
initialize在接口LoginModule - 参数:
-
subject- 要进行身份验证的Subject。 -
callbackHandler- 用于与最终用户进行通信的CallbackHandler(例如提示用户名和密码)。 -
sharedState- 共享的LoginModule状态。 -
options- 在此特定LoginModule的登录Configuration中指定的选项。
-
login
对用户进行认证(第一阶段)。此方法的实现尝试通过进行本机Unix系统调用来检索用户的Unix
Subject信息。- 指定者:
-
login在接口LoginModule - 返回:
-
在所有情况下为true(不应忽略此
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 - 返回:
-
在所有情况下为true(不应忽略此
LoginModule)。 - 抛出:
-
LoginException- 如果注销失败
-