打开文件 [root_install_dir]\appserv\web\WEB-INF\web.xml 并执行以下操作:
管理员如何为 Adobe Connect 帐户配置单一登录 (SSO),使其通过代理服务器或 NTLM 进行身份验证。
关于单一登录
单一登录是一种机制,通过该机制,用户可以进行一次身份验证,便可以访问多个应用程序。 单一登录使用代理服务器验证用户身份,这样用户无需登录到 Adobe Connect。
Adobe Connect 支持以下单一登录机制:
HTTP 头身份验证
配置身份验证代理以拦截 HTTP 请求, 从标头中解析用户凭据,并将凭据 传递给 Adobe Connect。
Microsoft NT LAN Manager (NTLM) 身份验证
配置 Adobe Connect 以尝试使用 NTLMv1 协议针对 Windows 域控制器自动验证连接客户端的身份。 Microsoft Windows 上的 Microsoft Internet Explorer 可以协商 NTLM 身份验证,而不提示用户提供凭据。
边缘服务器上不能进行 NTLM 验证。 而是使用 LDAP 验证。
Mozilla Firefox 客户端可能无需提示即可协商 NTLM 身份验证。 有关配置的信息,请参阅此 Firefox 文档。
您也可以编写自己的身份验证过滤器。 有关详细信息,请联系 Adobe 支持部门。
配置 HTTP 头身份验证
配置 HTTP 标头身份验证后, Adobe Connect 登录请求将被路由到 位于客户端和 Adobe Connect 之间的代理。代理可以是 身份验证代理或软件应用程序,用于对用户进行身份验证, 向 HTTP 请求添加另一个标头, 并将请求发送到 Adobe Connect。在 Adobe Connect 上,您必须取消注释 Java 过滤器, 并在 custom.ini 文件中配置一个 指定附加 HTTP 标头名称的参数。
在 Adobe Connect 上 配置 HTTP 标头身份验证
要启用 HTTP 标头身份验证, 请在托管 Adobe Connect 的计算机上 配置 Java 过滤器映射和标头参数。
-
-
删除 HeaderAuthenticationFilter 过滤器和过滤器映射元素周围的注释标签。
-
在 NtlmAuthenticationFilter 过滤器和过滤器映射元素周围添加注释标签。
-
-
停止 Adobe Connect Central Application Server 和 Meeting Server。
-
在 custom.ini 文件中添加以下行。 身份验证代理必须在发送到 Adobe Connect 的 HTTP 请求中添加一个头。 头的名称必须为 header_field_name。
HTTP_AUTH_HEADER=header_field_name
身份验证代理必须在发送到 Adobe Connect 的 HTTP 请求中添加一个头。 头的名称必须为 header_field_name。
-
保存 custom.ini 文件,并重新启动 Adobe Connect Meeting Server 和 Adobe Connect Central Application Server。
编写身份验证代码
身份验证代码 必须对用户进行身份验证, 向包含用户登录的 HTTP 标头添加一个字段, 并向 Adobe Connect 发送请求。
-
将 header_field_name 标头字段的值设置为 Adobe Connect 用户登录名。
-
将 HTTP 请求发送到 位于以下 URL 的 Adobe Connect:
http://example.com/system/login
Adobe Connect 上的 Java 过滤器会拦截此请求,查找 header_field_name 头,然后根据头中所传递的 ID 来查找用户。 如果找到此用户,则对该用户验证身份,并发送响应。
-
解析 Connect 响应的 HTTP 内容, 以查找是否包含表示身份验证成功的字符串“OK”。
-
解析 Adobe Connect 响应以获取 BREEZESESSION cookie。
-
将用户 重定向到 Adobe Connect 上所请求的 URL,并将 BREEZESESSION cookie 作为 session 参数的值进行传递, 如下所示:
http://example.com?session=BREEZESESSION
注意:在此客户端会话期间,必须在发送到 Adobe Connect 的任何后续请求中传递 BREEZESESSION cookie。
使用 Apache 配置 HTTP 标头 身份验证
以下 步骤介绍了使用 Apache 作为身份验证代理的 示例 HTTP 标头身份验证实现。
-
在与托管 Adobe Connect 的计算机不同的计算机上安装 Apache 作为反向代理。
-
选择“开始”>“程序”>“Apache HTTP Server”>“Configure Apache Server”(配置 Apache Server)>“Edit the Apache httpd.conf Configuration file”(编辑 Apache httpd.conf 配置文件),并执行以下操作:
-
取消以下行的注释:
- LoadModule headers_module modules/mod_headers.so
- LoadModule proxy_module modules/mod_proxy.so
- LoadModule proxy_connect_module modules/mod_proxy_connect.so
- LoadModule proxy_http_module modules/mod_proxy_http.so
-
在文件的末尾添加以下行:
RequestHeader append custom-auth "ext-login" ProxyRequests Off <Proxy *> Order deny,allow Allow from all </Proxy> ProxyPass / http://hostname:[port]/ ProxyPassReverse / http://[hostname]:[port]/ ProxyPreserveHost On
-
-
停止 Adobe Connect Central Application Server 和 Adobe Connect Meeting Server。
-
将以下内容添加到 custom.ini文件。 HTTP_AUTH_HEADER 参数应与在代理中配置的名称相符。 此参数是附加的 HTTP 头。
HTTP_AUTH_HEADER=custom-auth
-
保存 custom.ini 文件,并重新启动 Adobe Connect Meeting Server 和 Central Application Server。
-
打开文件 [root_install_dir]\appserv\web\WEB-INF\web.xml,并取消HeaderAuthenticationFilter 过滤器和 NtlmAuthenticationFilter 过滤器的完整注释。
配置 NTLM 身份验证
NTLMv1 是在 Microsoft Windows 网络中与 SMB 网络协议一起使用的身份验证协议。 使用 NTLM 可以允许用户向 Windows 域证明他们的身份,然后授权访问其他网络资源(例如 Adobe Connect)。 要建立用户凭据,用户的 Web 浏览器可以通过 Adobe Connect,使用域控制器自动执行质询和响应身份验证。 如果该机制失败,用户可以直接登录到 Adobe Connect。 仅 Windows 上的 Internet Explorer 支持使用 NTLMv1 身份验证的单点登录。
默认情况下,Windows Server 2022 域控制器需要称为 SMB 签名的安全功能。NTLM 身份验证过滤器的默认配置不支持 SMB 签名功能。 可以配置此过滤器以符合要求。 关此配置选项和其他高级配置选项的详细信息,请参阅 JCIFS NTLM HTTP authentication 文档。
添加配置参数
对 Adobe Connect 群集中的每台主机 执行以下操作:
-
通过 8510 管理控制台在 Adobe Connect 中同步来自您域的 LDAP 用户。 要将 Adobe Connect 与 LDAP 集成,请参阅将 Adobe Connect 与 LDAP 目录集成。
注意:在 Adobe Connect 中同步 LDAP 以后,过滤 LDAP 数据,将 NTLM 域用户名填充到 Adobe Connect 数据库。 否则,NTLM SSO 登录无效,并会在 debug.log 中显示登录失败。
-
编辑 Adobe Connect 的登录策略,以更改域用户名的登录。 默认情况下为电子邮件,但是 NTLM 不允许使用电子邮件。
-
在文本编辑器中打开[root_install_dir]\custom.ini 文件,并添加以下属性:
NTLM_DOMAIN=[domain]
NTLM_SERVER=[WINS_server_IP_address]值 [WINS_server_IP_address] 是 WINS 服务器的 IP 地址或 IP 地址以逗号分隔的列表。 请使用 IP 地址,主机名无效。 根据指定顺序对 WINS 服务器进行查询以为 NTLM_DOMAIN 参数中的特定域解析域控制器的 IP 地址。 (此域控制器对用户进行身份验证。) 您还可以指定域控制器本身的 IP 地址,例如 10.169.10.77、10.169.10.66。该值会映射到过滤器属性 jcifs.netbios.wins。在 web.xml 文件中设置此值将改写 custom.ini 文件中的值。
-
保存 custom.ini 文件。
-
在文本编辑器中打开文件 [root_install_dir]\appserv\web\WEB-INF\web.xml 并取消以下注释:
- 完整的 NtlmAuthenticationFilter 过滤器和过滤器映射元素
- 完整的 HeaderAuthenticationFilter 过滤器和过滤器映射元素
-
保存 web.xml 文件并重新启动 Adobe Connect Server。
协调登录名策略
Adobe Connect 和 NTLM 对于验证用户身份使用不同的登录名策略。 首先必须协调这些策略,然后用户才能使用单一登录。
NTLM 协议使用登录标识符,该标识符可以是用户名 (jdoe)、雇员 ID 号码 (1234) 或加密的名称,具体取决于策略或单位。 默认情况下,Adobe Connect 使用电子邮件地址 (jdoe@mycompany.com) 作为登录标识符。 更改 Adobe Connect 登录名策略,以便 Adobe Connect 可以与 NTLM 共享唯一标识符。
-
打开 Adobe Connect Central。
要打开 Adobe Connect Central,请打开浏览器窗口 并输入 Adobe Connect 主机的 FQDN(例如,http://connect.mycompany.com)。 您在应用程序管理控制台的服务器设置屏幕上 输入了 Adobe Connect 主机值。
-
选择“管理”选项卡。 单击“用户和用户组”。 单击“编辑登录名和口令策略”。
-
在“登录名策略”部分,为“使用电子邮件地址作为登录名”选择“否”。