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
-
Method Summary
Modifier and TypeMethodDescriptionboolean
abort()
如果LoginContext的整体认证失败,则调用此方法。boolean
commit()
如果LoginContext的整体认证成功(相关的REQUIRED、REQUISITE、SUFFICIENT和OPTIONAL LoginModules都成功),则调用此方法。void
initialize
(Subject subject, CallbackHandler callbackHandler, Map<String, ?> sharedState, Map<String, ?> options) 初始化这个LoginModule
。boolean
login()
导入底层NT系统身份信息。boolean
logout()
注销用户。
-
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
- 如果注销失败。
-