近期一段时间发现AD这东西老火了,尤其是涉及到安全这一方面的,所以AD域用户认证成了如今网络安全方面的产品必备!这里就简单的分享一下,Java通过jcifs集成AD域用户实现认证,以实现网络安全!
我们通过一个demo来看看jcifs实现SSO,SSO英文全称Single Sign On,单点登录。SSO是在多个应用系统中,用户仅仅须要登录一次就能够訪问全部相互信任的应用系统。它包含能够将这次基本的登录映射到其它应用中用于同一个用户的登录的机制。它是眼下比較流行的企业业务整合的解决方式之中的一个。
第一步:把jcifs-1.3.15.jar放到tomcat的webapp文件夹。
第二步:在web.xml中配置:
<filter> <filter-name>NtlmHttpFilter</filter-name> <filter-class>jcifs.http.NtlmHttpFilter</filter-class> <init-param> <param-name>jcifs.http.domainController</param-name> <!-- 域serverIP --> <param-value>10.10.2.153</param-value> </init-param> <init-param> <param-name>jcifs.util.loglevel</param-name> <!-- 日志等级 --> <param-value>6</param-value> </init-param> <init-param> <param-name>jcifs.smb.lmCompatibility</param-name> <param-value>0</param-value> </init-param> <init-param> <param-name>jcifs.smb.client.useExtendedSecurity</param-name> <param-value>false</param-value> </init-param> <init-param> <param-name>jcifs.smb.client.username</param-name> <!-- 账号 --> <param-value>administrator</param-value> </init-param> <init-param> <param-name>jcifs.smb.client.password</param-name> <!-- 密码 --> <param-value>admin</param-value> </init-param> </filter> <filter-mapping> <filter-name>NtlmHttpFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
第三步:部署重新启动服务,看看效果
假设不在此处输入域用户和password而且域用户和password不对的话,你就无法訪问到其它的数据!