代码之家  ›  专栏  ›  技术社区  ›  Mike Schall

WebSphere 7.0中应用程序的安全领域

  •  1
  • Mike Schall  · 技术社区  · 14 年前

    我们正在使用web应用程序的安全领域进行测试。在测试中,我们将使用Microsoft活动目录。生产将与定制领域背道而驰。我在Tomcat中工作得很好,但在WebSphere中似乎无法实现这一点。我在WebSphere中创建了一个安全域(foo ldap),可以连接到AD。目前我已经将foo ldap应用到server1范围。当点击/servlet/LoginServlet时,我没有被重定向到authenticate.faces。

    下面包括Web.xml和Tomcat配置。

    Tomcat配置:

        <Realm className="org.apache.catalina.realm.JNDIRealm"
            connectionURL="ldap://ActiveDirectorySrv:389"
            connectionName="CN=ldap user,CN=Users,DC=foo,DC=com"
            connectionPassword="Password1"
            referrals="follow"
            userBase="CN=Users,DC=foo,DC=com"
            userSearch="(&amp;(objectCategory=user)(sAMAccountName={0}))"
            userSubtree="true"
            userRoleName="memberOf"
            roleBase="CN=Users,DC=foo,DC=com"  
            roleSubtree="true"  
            roleName="cn"  
            roleSearch="(member={0})"/>
    

    Web.xml文件

        <security-constraint>
            <web-resource-collection>
                <web-resource-name>Protected Area</web-resource-name>
                <url-pattern>/servlet/LoginServlet</url-pattern>
            </web-resource-collection>
            <auth-constraint>
                <role-name>Developers</role-name>
            </auth-constraint>
        </security-constraint>
    
        <login-config>
            <auth-method>FORM</auth-method>
            <form-login-config>
                <form-login-page>/authenticate.faces</form-login-page>
                <form-error-page>/loginFailed.faces</form-error-page>
            </form-login-config>
        </login-config>
    
        <security-role>
            <role-name>Developers</role-name>
        </security-role>
    
    1 回复  |  直到 14 年前
        1
  •  1
  •   Mike Schall    14 年前

    我遇到的问题有两个方面。

    1. web.xml中存在安全上下文的配置。它必须在应用程序安装时显示已安装的war。我们对配置进行了注释,这样开发人员在调试时就不需要提供凭据,而我在部署war之后试图取消注释。

    2. 安装时必须将角色映射到安全域。我们有一个部署应用程序的脚本,在没有修改的情况下,角色没有映射,安装后映射角色的功能不可用。即使是从ibm控制台站点安装,也必须在安装时选择详细的安装和映射组,否则到映射的链接不可用。

    一旦我安装了安全性并重定向到登录页面,我们就遇到了另一个问题。我不确定这是否是JSF代码的问题,但我无法重定向到在WebSphere中使用JSF的页面(可以与Tomcat一起使用)。我们的解决方案是使用jsp页面作为身份验证页面。

    希望这能帮助别人。