OpenAM:Web 策略代理登录 OpenAM 失败

问题描述

我无法确定错误来源。我检查了几十次设置,我尝试了本地和公共 IP,我什至尝试使用不同的网络代理版本,我阅读了我能找到的关于该主题的所有内容(至少感觉上是这样)。

问题:为什么我的 Web 代理无法登录 OpenAM?

初始情况:我有两个 docker 容器。第一个是使用 OpenAM 运行 Tomcat 服务器,第二个是运行 Apache Web 服务器。两个容器都部署在两个不同的虚拟机上。两台机器可以通过公共和私有 IP 相互访问,并且在 docker-compose 文件中设置了“network_mode: host”。

this offical-guide 之后,我使用具有以下规范的 AM 控制台创建代理配置文件

  • 代理 ID:WebAgent
  • 代理网址:http://<public_ip_apache_server>:80
  • 服务器网址:http://<public_ip_openam_server>:8080/openam
  • 密码:密码

在运行 Apache 网络服务器的容器中,我执行以下操作:

  • 停止 apache 网络服务器。
  • 安装 OpenSSL。
  • /<path>/libcrypto.so/<path>/libssl.so 导出到 LD_LIBRARY_PATH
  • 通过运行确保 libc.so.6 可用,并且它支持 GLIBC_2.3 API strings libc.so.6 | grep GLIBC_2 内的 /usr/lib/x86_64-linux-gnu/
  • 通过 echo password > /tmp/pwd.txt 后跟 chmod 400 /tmp/pwd.txt 创建密码文件
  • 为 Web 代理运行配置命令:
/apache24_agent/bin/agentadmin --s "/usr/local/apache2/conf/httpd.conf" \ 
"http://<public_ip_openam_server>:8080/openam" "http://<public_ip_apache_server>:80" "/" \
"WebAgent" "/tmp/pwd.txt" --changeOwner --acceptLicence

问题:

最后一个命令总是失败并显示以下输出

OpenAM Web Agent for Apache Server installation.
Validating...
Error validating OpenAM - Agent configuration.
Installation Failed.
See installation log /usr/local/apache2/apache24_agent/bin/../log/install_20201227114136.log file for more details. Exiting.

检查错误日志:

2020-12-27 11:41:36  license accepted with --acceptLicence option
2020-12-27 11:41:36  license was accepted earlier
2020-12-27 11:41:36  Found user daemon,uid 1,gid 1
2020-12-27 11:41:36  Found group daemon,gid 1
2020-12-27 11:41:36  OpenSSL library status: <removed for readbility> OpenSSL v1.1.x library support is available
2020-12-27 11:41:36  validating configuration parameters...
2020-12-27 11:41:36  error validating OpenAM agent configuration
agent login to http://<public_ip_openam_server>:8080/openam fails
2020-12-27 11:41:36  installation error
2020-12-27 11:41:36  installation exit

系统和软件:

  • OpenAM 版本:14.5.4
  • 运行 Apache 网络服务器的容器:x86_64 系统,Debian
  • Apache 版本:2.4.46
  • Web 策略代理:平台 = Apache,平台版本 = 2.4,操作系统 = Linux,架构 = 64 位,平台版本 = 5.6,版本 = 5.6.2.0
  • OpenSSL 版本:v1.1

解决方法

您使用的是 Open Identity Platform 社区版吗?恐怕 Web Agent 5.6.2.0 和 OpenAM 14.5.4 可能不兼容。尝试使用较早的 Web Agent 版本(例如 4.1.1),或切换到 OpenIG 作为 Web Agent 的替代方案。 下面有几个有用的链接:

https://github.com/OpenIdentityPlatform/OpenAM/wiki/Quick-Start-Guide

https://github.com/OpenIdentityPlatform/OpenAM/wiki/How-to-Add-Authorization-and-Protect-Your-Application-With-OpenAM-and-OpenIG-Stack

相关问答

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