EGL LDAP 访问具有的 J2EE 安全性的设置

可遵循这些指示信息,以设置和运行“EGL LDAP 访问具有的 J2EE 安全性”样本。要设置该样本,可导入数据、配置 J2EE 安全性,并运行该样本。

开始之前

要使用“EGL LDAP 访问具有的 J2EE 安全性”样本,必须使用符合 LDAP 的服务器。如果没有符合 LDAP 的服务器,那么可使用开放式源代码服务器(例如,ApacheDS)以及提供对该服务器的访问权限的客户端(例如,Apache Directory Studio)。有关详细信息,请参阅配置与 LDAP 兼容的软件

关于此任务

这些设置指示信息专门针对 ApacheDS 和 Apache Directory Studio。如果使用另一符合 LDAP 的服务器,那么根据您的服务器,您的配置可能会不同。

过程

  1. 导入数据:
    1. 要将样本项目导入您的工作空间,请在 EGL LDAP 访问具有的 J2EE 安全性页上单击获取样本。允许工作空间迁移工具执行任何必要的迁移。
    2. 在样本项目中,打开下列每个文件并确保内容适用于您的服务器:
      • EGLSource/libraries/LdapLoginLib.egl,可能需要在其中更改以下 providerURL 条目:
        providerUrl String = "ldap://localhost:389/o=sample";
      • EGLSource/libraries/UserObjectLib.egl
    3. 将您项目中的 SampleCompany.ldif 文件中的样本数据导入到您的目录服务器。
      • 如果使用符合 LDAP 的现有服务器,请导入位于以下位置的 SampleCompany.ldif 文件中的样本数据:
        workspace/SecureLDAPSample/
        注: workspace 是 EGL 产品工作空间的标准路径名;例如,C:/MyWorkspace
      • 如果使用开放式源代码的 Apache 软件进行演示,请通过遵循使用 Apache Directory Studio 导入样本数据中的指示信息来将样本数据导入到 ApacheDS 目录服务器上。
  2. 配置 J2EE 安全性。 有关设置基于 Web 并由容器管理的 J2EE 安全性的常规信息,请参阅“使用 J2EE 容器管理的安全性”。
    1. 针对 J2EE 安全性设置 WebSphere Application Server:
      1. 创建 WebSphere Application Server 的实例(例如,V8.0)并启动该服务器。
      2. 右键单击该服务器并选择管理 > 运行管理控制台
      3. 在主要管理控制台上,展开安全性 > 全局安全性,然后单击安全管理、应用程序和基础结构
      4. 选择启用管理安全性启用应用程序安全性,但取消选中使用 Java 2 安全性限制对本地资源的应用程序访问权
      5. 可用的域定义部分中,选择独立 LDAP 注册表。单击设置为当前项
      6. 访问独立 LDAP 注册表属性:
        1. 单击配置
        2. 在“独立 LDAP 注册表属性”窗口的“其他属性”选项卡上,单击高级轻量级目录访问协议 (LDAP) 用户注册表设置
        3. 对于用户过滤器,输入 (&(uid=%v)(objectclass=person)),然后单击确定
      7. 对于主要管理用户名称,输入 msmith
      8. 选择自动生成的服务器身份
      9. 输入 LDAP 绑定条件,然后单击确定应用。如果将开放式源代码 Apache 软件用于演示目的,请使用表中列示的条件。否则,请使用缺省值。
        表 1. LDAP 绑定条件
        绑定条件
        LDAP 服务器的类型 Custom
        主机 localhost
        端口 389
        基本专有名称 (DN) o=sample
        绑定专有名称 uid=msmith,ou=people,o=sample
        BIND 密码 pass
      10. 在窗口顶部的消息框中,单击直接保存至主配置
        要点: 由于您已启用管理安全性,因此必须通过使用用户标识 msmith 和密码 pass 来登录到 WebSphere Application Server。如果不再需要管理安全性,那么在运行此样本之后,请关闭管理安全性。
      11. 退出管理控制台并停止服务器。
    2. 设置 WebSphere Application Server 的实例:
      1. 右键单击服务器并选择打开
      2. 指定自动连接设置,或将服务器连接类型从 RMI 更改为 SOAP。使用缺省端口。
      3. 在“安全性”下面,选择在此服务器上启用安全性。对于您的用户标识,输入 msmith;对于您的密码,输入 pass。确保在 SSL 握手期间自动信任服务器证书处于选中状态。
        要点: 要避免认证错误以及不需要的循环,请确保该用户标识和密码与管理控制台中输入的凭证精确匹配。
      4. 保存您所作的更改。
    3. 下载“EGL LDAP 访问具有的 J2EE 安全性”样本。
      对于 J2EE 安全性,已配置项目 SecureLDAPSample 的部署描述符 (WebContent/WEB-INF/web.xml):
      • 安全性选项卡上,已添加 AllRole 安全角色。
      • 已添加 Constraint1 安全性约束。约束指定此项目中受 J2EE 安全性保护的资源以及可访问这些资源的角色。Constraint1 指定仅那些具有 AllRole 安全角色的人员才能访问此项目中的 JSP 页面或资源,这些 JSP 页面或资源是在 WebContent (“/*”) 下定义的。
      • 页面选项卡上,认证方法已设置为 FORM;这指示使用的是基于表单的认证。登录页面和错误页已在项目中定义,并且指定为与基于表单的认证配合使用。
      对于 J2EE 安全性,已配置 SecureLDAPSampleEAR 项目的 EarContent/META-INF/application.xml 部署描述符:
      • 安全性选项卡上,已添加 AllRole 安全角色。
      • 在“WebSphere 绑定”下面,已选择所有已认证的用户以映射到 AllRole。因此,SampleCompany 目录中的所有用户标识都会映射到 AllRole 并且可运行此 Web 应用程序。
      如果在运行管理安全性时有困难,那么可通过在命令行上而不是在管理控制台上进行工作来将其禁用。要禁用管理安全性,请执行如下操作:
      1. 在命令提示符处,输入以下内容:
        WebSphere_home\bin\wsadmin.bat -conntype NONE
        注: WebSphere_home 是 WebSphere Application Server 的安装目录的标准路径名。
      2. 当再次显示系统提示符时,输入 securityoff
      3. 当完成时,输入 quit
      4. 重新启动应用程序服务器。
  3. 运行该样本:
    1. 清除 SecureLDAPSample 项目。
    2. 要生成代码,请使用 SecureLDAPSample.eglbld 中的 SecureLDAPSampleWebBuildOptions 构建描述符。
    3. 右键单击 WebSphere Application Server 的实例。单击添加和除去项目
    4. 将 SecureLDAPSampleEAR 添加至服务器,然后单击完成
    5. 启动 WebSphere Application Server,以完成安全配置:
      1. 右键单击该服务器并选择管理 > 运行管理控制台
      2. 展开应用程序,然后单击企业应用程序。此时,会显示“企业应用程序”页面。
      3. 单击 SecureLDAPSampleEAR。此时,会显示应用程序配置页面。
      4. Web 模块属性部分中,单击会话管理。此时,会显示“会话管理”页面。
      5. 在“常规属性”部分中,单击安全性集成

      如果再次对同一服务器实例运行该样本,那么不需要重复该安全配置。

    6. 重新启动 WebSphere Application Server。
    7. 在 SecureLDAPSample 中的 WebContent 文件夹内,右键单击 welcome.jsp。选择运行方式,然后选择在服务器上运行
    8. 在登录页面上,通过输入用户标识 ajones 和密码 pass 来以 Sample Company 客户身份进行认证;然后单击确定。“欢迎访问 Sample Company”页面打开。可显示或更新 ajones 的数据。
    9. 单击更新
    10. 更改某些数据,然后单击更新并显示。这些更改会落实到目录。新数据会显示在页面上。
    11. 重新启动服务器和工作台。
    12. 在服务器上,运行 welcome.jsp 并通过使用用户标识 msmith 和密码 pass 来以 Sample Company 员工身份登录。可显示或更新数据。

反馈