【问题标题】:Security Realm for an application within WebSphere 7.0WebSphere 7.0 中应用程序的安全领域
【发布时间】:2010-10-21 16:22:39
【问题描述】:

我们正在对我们的 Web 应用程序使用安全领域进行测试。在测试中,我们将针对 Microsoft Active Directory。生产将违背自定义领域。我在 Tomcat 中工作得很好,但似乎无法在 WebSphere 中工作。我在 WebSphere 中创建了一个可以连接到 AD 的安全域 (foo-ldap)。现在我已将 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>

【问题讨论】:

    标签: security websphere jndi


    【解决方案1】:

    我遇到的问题有两个。

    1. 安全上下文的配置存在于 web.xml 中。它必须在应用程序安装时出现已安装的战争。我们已将配置注释掉,因此开发人员在调试时无需提供凭据,而我试图在部署战争后取消注释。

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

    一旦我安装了安全性并且重定向到登录页面正常工作,我们遇到了另一个问题。我不确定这是否是我们的 JSF 代码的问题,但我无法重定向到在 WebSphere 中使用 JSF 的页面(适用于 Tomcat)。我们的解决方案是只使用一个jsp页面作为认证页面。

    希望这对其他人有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-03-29
      • 2012-01-15
      • 2014-01-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-12
      • 1970-01-01
      相关资源
      最近更新 更多