Java NTLM窗口身份验证
我使用Samba实现窗口身份验证。在我的web.xml上,我把这个Java NTLM窗口身份验证,java,ntlm,Java,Ntlm,我使用Samba实现窗口身份验证。在我的web.xml上,我把这个 <filter> <filter-name>NtlmHttpFilter</filter-name> <filter-class>jcifs.http.NtlmHttpFilter</filter-class> <init-param> <param-name>jcifs.http.domainController</param-
<filter>
<filter-name>NtlmHttpFilter</filter-name>
<filter-class>jcifs.http.NtlmHttpFilter</filter-class>
<init-param>
<param-name>jcifs.http.domainController</param-name>
<param-value>192.168.1.101</param-value>
</init-param>
<!--
always needed for preauthentication / SMB signatures
-->
<init-param>
<param-name>jcifs.smb.client.domain</param-name>
<param-value>NYC-USERS</param-value>
</init-param>
<init-param>
<param-name>jcifs.smb.client.username</param-name>
<param-value>somenycuser</param-value>
</init-param>
<init-param>
<param-name>jcifs.smb.client.password</param-name>
<param-value>AReallyLoooongRandomPassword</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>NtlmHttpFilter</filter-name>
<url-pattern>/admin/*</url-pattern>
</filter-mapping>
NtlmHttpFilter
jcifs.http.NtlmHttpFilter
jcifs.http.domainController
192.168.1.101
jcifs.smb.client.domain
纽约市用户
jcifs.smb.client.username
某个人
jcifs.smb.client.password
AreallyLooong随机密码
NtlmHttpFilter
/管理员/*
一旦我在管理文件夹中运行页面,窗口登录框就会弹出。我应该输入什么用户名和密码,因为我目前正在管理员帐户下运行。我不太明白,有人能解释给我听吗
<init-param>
<param-name>jcifs.smb.client.username</param-name>
<param-value>somenycuser</param-value>
</init-param>
<init-param>
<param-name>jcifs.smb.client.password</param-name>
<param-value>AReallyLoooongRandomPassword</param-value>
</init-param>
jcifs.smb.client.username
某个人
jcifs.smb.client.password
AreallyLooong随机密码
我可以设置用户名和密码吗?因为您是以本地管理员身份登录的,ie不会为jcifs传输所需的标题。因此,它失败了,您需要使用有效用户登录域 通常,它应该与您的用户/pw组合工作。如果不尝试用户名:域\用户名(请确保使用反斜杠)
必须在jcifs中定义的domaincontroller上设置用户名。http。domaincontrollerNTLM明确区分用户和域\用户,因此确保在身份验证请求中包含域。使用NTLM身份验证时,您使用windows域进行身份验证, 这在带有MS域控制器的本地内部网中非常有用。 如果在web.xml中正确配置了域控制器 您将能够使用windows登录对网站进行身份验证 用户名和密码(假设您通过配置的相同域登录) 您的web.xml 您的浏览器可能配置为自动对某些站点进行身份验证, 在IE中,这通常默认情况下发生在本地网络上的站点上(取决于安全设置)。在Firefox中,这不会自动发生,您需要在每个站点启用它 使用about:配置“network.automatic ntlm auth.trusted uris”设置 需要注意的是,NTLM身份验证无论多么简单都被认为是不安全的,
通过向不受信任的服务器进行身份验证,该服务器很容易从您发送给它的身份验证信息中恢复您的密码。这是一个开源库,它还支持集成的windows身份验证/sso 该库的项目页面有一些示例和安装说明