如何将 OpenDJ 设置为 OpenAM 的外部身份存储/存储库?

问题描述

如何将符合 LDAPv3 的目录服务 OpenDJ 设置为访问管理解决方OpenAM 的外部身份存储?

解决方法

免责声明:这个答案只能作为一个起点,因为经过两天的挖掘,我找不到关于这个主题的任何好的信息。正如伯恩哈德在评论中指出的那样,您例如不应在生产中使用用户 RootDN。

  1. 使用 docker 启动这两个服务:
version: "3.4"
services:
  openam:
    image: openidentityplatform/openam
    container_name: am
    hostname: openam.example.com
    network_mode: host
    ports:
        - 8080:8080
  opendj:
    image: openidentityplatform/opendj
    container_name: dj
    hostname: cts.example.com
    network_mode: host
    user: root
    ports:
        - 1389:1389
  1. 将以下行添加到您的 /etc/hosts 文件中:
127.0.0.1 localhost openam.example.com cts.example.com
  1. docker-compose up -d 文件所在的文件夹中运行 docker-compose.yml
  2. 等待两个服务都启动。然后运行 ​​docker exec -it dj /bin/bash 以启动 OpenDJ 容器的交互模式。 OpenDJ 图像已经带有预配置的身份存储。要检索用于配置 OpenAM 的所有相关信息,请输入容器 (opendj) 中的 cd opendj 文件夹并运行:
$ bin/status --bindDN "cn=Directory Manager" --bindPassword password
          --- Connection Handlers ---
Address:Port : Protocol : State
-------------:----------:---------
--           : LDIF     : Disabled
0.0.0.0:636  : LDAPS    : Disabled
0.0.0.0:1389 : LDAP     : Enabled
0.0.0.0:1689 : JMX      : Disabled
0.0.0.0:8080 : HTTP     : Disabled

          --- Data Sources ---
Base DN:     dc=example,dc=com
Backend ID:  userRoot
Entries:     203
Replication:

有关上述更多命令以及自行配置服务器的信息,请查看 OpenDJ's community How To

  1. 打开浏览器并转到http://openam.example.com:8080/openam。如果您在无头 VM 上运行,请查看我的这个 Stackoverflow question,因为我遇到了同样的问题。

  2. 选择“创建新配置”:List item

  3. 接受条款并点击“继续”。当提示输入默认用户 [amAdmin] 的密码时,输入例如OpenAM 的 amAdmin 的默认密码 changeit 并点击“下一步”:enter image description here

  4. 在“服务器设置”选项卡中,保留除 cookie 域之外的所有内容。将 cookie 域更改为 .example.com,然后单击“下一步”。enter image description here

  5. 不要更改“配置存储”选项卡中的任何内容,然后单击“下一步”。

  6. 在“用户存储”选项卡中输入已配置的 OpenDJ 服务器的信息、OpenDJ 服务器的默认密码 password 以及 {{1} 中设置的目录名称 cts.example.com }} 文件,然后单击“下一步”:enter image description here

  7. 不要更改“站点配置”选项卡中的任何内容,然后单击“下一步”。

  8. 在“代理信息”选项卡中输入密码(例如 docker-compose.yml),然后单击下一步。

  9. 检查摘要并点击“创建配置”:enter image description here

  10. 完成!

要检查您的工作,请以用户 password 的身份登录 OpenAM,并使用先前设置的密码 amadmin。然后转到changeitenter image description here 注意:在您的情况下,您只会看到用户“管理员”和“匿名”,因为您尚未填充身份存储。

,

按照forgerock目录服务器和forgerock AM的官方文档,即使在付费版本中仍然以相同的方式配置。

More Here

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...