AD域登录验证

在很多的应用项目中,客户会采用Windows域登录认证平台。要求 Smartbi 也要接windows域验证,本文介绍如何在windows域验证。请参考如下操作步骤。
1、用 WinRAR 之类的压缩工具,打开 smartbi.war ,将smartbi.war\WEB-INF \ ad.properties 文件从 WinRAR 窗口中拖出来,对其进行修改。接着将修改后的文件,拖放回 WinRAR 窗口中,覆盖以前的旧文件。关闭 WinRAR 窗口保存修改即可。
2、打开ad.properties文件,修改参数,具体如下:


3、启动Smartbi 系统后进入http://localhost:18080/smartbi/vision/config.jsp 配置界面,修改"用户管理"配置段中的"加密类型"为CLASS,"登录验证类"为 smartbi.usermanager.auth.impl.ADAuthentication,具体如下图所示。

4、配置完成后,点击右下角的"保存"按钮,根据提示再重启Smartbi 后,即可看到效果。

 

注:若是配置后发现不能正常使用,可以通过下面方法来获取错误信息,以便定位到问题原因。

1.下载testldap.jsp文件,并根据实际情况进行下面修改:

        String initialContextFactory = "com.sun.jndi.ldap.LdapCtxFactory";
         String providerUrl = "ldap://192.168.1.91:3268";//域服务器地址
        String prefix = "smartbi\\";//域名,如图
        String userName = "administrator";//用户名
        String password = "manager";//用户密码
        String baseName = "";
        String filterPrefix = "(&(objectCategory=Person)(sAMAccountName=";
        String filterSuffix = "))";
        String searchuser = "administrator"; //需要查询的用户
其中域名的获取方法可见下图:
        
        
2.将修改后的testldap.jsp文件放到smartbi.war/vision/目录中,并重启服务器;
3.启动服务器后访问附件文件,访问地址为:http://ip:port/smartbi/vision/testldap.jsp(这里ip和port改成访问smartbi时的ip和端口),
   正常的访问截图如下:

   

 异常访问的截图:

 

4.最后根据异常页面中的信息来判断哪里设置有误。