java.lang.Object
com.sun.security.auth.module.NTLoginModule
- 所有实现的接口:
-
LoginModule
这个
LoginModule将用户的NT安全信息呈现为一些Principal并将它们与一个Subject关联起来。
这个LoginModule识别调试选项。如果在登录配置中设置为true,调试消息将输出到输出流System.out。
这个LoginModule还识别debugNative选项。如果在登录配置中设置为true,模块的本机组件的调试消息将输出到输出流System.out。
- 参见:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanabort()如果LoginContext的整体认证失败,则调用此方法。booleancommit()如果LoginContext的整体认证成功(相关的REQUIRED、REQUISITE、SUFFICIENT和OPTIONAL LoginModules都成功),则调用此方法。voidinitialize(Subject subject, CallbackHandler callbackHandler, Map<String, ?> sharedState, Map<String, ?> options) 初始化这个LoginModule。booleanlogin()导入底层NT系统身份信息。booleanlogout()注销用户。
-
Constructor Details
-
NTLoginModule
public NTLoginModule()创建一个NTLoginModule。
-
-
Method Details
-
initialize
public void initialize(Subject subject, CallbackHandler callbackHandler, Map<String, ?> sharedState, Map<String, ?> options) 初始化这个LoginModule。- 指定者:
-
initialize在接口LoginModule - 参数:
-
subject- 要进行身份验证的Subject。 -
callbackHandler- 用于与最终用户通信的CallbackHandler(例如提示用户名和密码)。这个特定的LoginModule只提取底层NT系统信息,因此此参数将被忽略。 -
sharedState- 共享的LoginModule状态。 -
options- 在此特定LoginModule的登录Configuration中指定的选项。
-
login
导入底层NT系统身份信息。- 指定者:
-
login在接口LoginModule - 返回:
-
在所有情况下返回true,因为这个
LoginModule不应被忽略。 - 抛出:
-
FailedLoginException- 如果认证失败。 -
LoginException- 如果这个LoginModule无法执行认证。
-
commit
如果LoginContext的整体认证成功(相关的REQUIRED、REQUISITE、SUFFICIENT和OPTIONAL LoginModules都成功),则调用此方法。如果这个LoginModule自己的认证尝试成功(通过检索
login方法保存的私有状态来检查),则此方法将将一些不同的Principal与位于LoginModuleContext中的Subject关联起来。如果这个LoginModule自己的认证尝试失败,则此方法将删除最初保存的任何状态。- 指定者:
-
commit在接口LoginModule - 返回:
- 如果这个LoginModule自己的登录和提交尝试成功,则返回true,否则返回false。
- 抛出:
-
LoginException- 如果提交失败。
-
abort
如果LoginContext的整体认证失败(相关的REQUIRED、REQUISITE、SUFFICIENT和OPTIONAL LoginModules都未成功),则调用此方法。如果这个LoginModule自己的认证尝试成功(通过检索
login和commit方法保存的私有状态来检查),则此方法将清除最初保存的任何状态。- 指定者:
-
abort在接口LoginModule - 返回:
- 如果这个LoginModule自己的登录和/或提交尝试失败,则返回false,否则返回true。
- 抛出:
-
LoginException- 如果中止失败。
-
logout
注销用户。这个方法将删除
NTUserPrincipal、NTDomainPrincipal、NTSidUserPrincipal、NTSidDomainPrincipal、NTSidGroupPrincipal和NTSidPrimaryGroupPrincipal,这些可能是由commit方法添加的。- 指定者:
-
logout在接口LoginModule - 返回:
-
在所有情况下返回true,因为这个
LoginModule不应被忽略。 - 抛出:
-
LoginException- 如果注销失败。
-