NetWorker:AD 用户无法通过 LDAPS 登录 “无法从 json 字符串解析服务器响应”

Summary: 当使用“LDAP over SSL”选项时,使用 NetWorker 管理控制台 (NMC) 外部机构配置向导将 Microsoft Active Directory (AD) 身份验证添加到 NetWorker。配置已成功添加,但 AD 用户身份验证失败,并显示 HTTP-ERROR 500。

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

  • 用户正在访问 NetWorker Management Console (NMC) 或 nsrlogin 命令行,并收到错误:
An error occurred while validating user credentials. Verify that NetWorker Authentication Service is running.
[POST failed with HTTP-ERROR: 500 Server Message: Could not parse server-response from json string]
  • 外部身份验证机构使用 基于 SSL 的 LDAP 选项进行了配置;但是,身份验证服务器是 Microsoft Active Directory:
    • 设置 >用户和角色>外部机构 >右键单击外部机构>属性: 
外部身份验证机构 LDAP over SSL

Cause

HTTP Error 500 "Internal Server Error."


选择 基于 SSL 的 LDAP 选项后,它会将内部属性 是 Active Directory 设置为 false。这可防止通过 NetWorker 在 Microsoft Active Directory 中配置的用户成功登录。

这可以通过以下方式进行验证: authc_config 使用 root 或管理员命令提示符的命令行:

authc_config -u Administrator -e find-all-configs

authc_config -u Administrator -e find-config -D config-id=config_id#
提醒:系统将提示您输入 NetWorker 管理员帐户密码。也可以使用以下命令指定密码: -p password
[root@networker-mc ~]# authc_config -u administrator -p 'Pa$$w0rd01' -e find-all-configs 
The query returns 1 records.
Config Id Config Name
2         amer     
[root@networker-mc ~]# authc_config -u administrator -p 'Pa$$w0rd01' -e find-config -D config-id=2 | grep -i "is active directory"
Is Active Directory          : false

LDAP over SSL选项不适用于基于 SSL 的 AD

Resolution

提醒:NetWorker Web 用户界面 (NWUI) 外部机构向导具有 AD over SSL选项;但是,NMC 没有。基于 SSL 的 AD 将 Is Active Directory 参数设置为 true,同时保留其他安全 (LDAPS) 设置。请参阅戴尔文章 NetWorker:如何从 NetWorker Web 用户界面 (NWUI) 配置“AD over SSL”(LDAPS)

解决办法: 

authc_config 命令可用于将配置 是 Active Directory 值更新为 true

Windows:

  1. 在 NetWorker (authc) 服务器,打开管理员命令提示符。
  2. 获取外部机构配置的配置 ID:
authc_config -u Administrator -p NetWorker_Administrator_Password -e find-all-configs
可以通过以下命令查看当前设置:
authc_config -u Administrator -p NetWorker_Administrator_Password -e find-config -D config-id=config_id#
  1. 使用以下命令更新 Is Active Directory 值: 
authc_config -u administrator -p NetWorker_Administrator_Password -e update-config -D config-id=config_id# -D "config-active-directory=y" -D "config-server-address=ldaps://domain_server_hostname:636/dc=domain,dc=com" -D config-user-dn=”cn=service_account,ou=some_group,dc=domain,dc=com" -D config-user-dn-password="Service_Account_Password"
提醒:除 AD 服务帐户密码外,所有必填字段均可从以下位置收集 authc_config -u Administrator -e find-config -D config-id=config_id#

示例:
C:\Users\Administrator.AMER>authc_config -u administrator -p 'Pa$$w0rd01' -e update-config -D config-id=1 -D "config-active-directory=y" -D "config-server-address=ldaps://dc.amer.lan:636/dc=amer,dc=lan" -D "config-user-dn=cn=administrator,cn=users,dc=amer,dc=lan" -D config-user-dn-password="Pa$$w0rd01"
Configuration ad is updated successfully.

C:\Users\Administrator.AMER>
  1. 通过 NetWorker 的 AD 登录现在应该成功完成。


Linux:

  1. 在 NetWorker (authc) 服务器,打开 root 命令提示符。
  2. 获取外部机构配置的配置 ID:
authc_config -u Administrator -p 'NetWorker_Administrator_Password' -e find-all-configs
可以通过以下命令查看当前设置: 
authc_config -u Administrator -p 'NetWorker_Administrator_Password' -e find-config -D config-id=config_id#
  1. 创建包含 AD 服务帐户密码的隐藏文本文件:
echo 'Service_Account_Password' > /root/.sapasswd.txt
  1. 使文件仅可供 root 用户访问:
chmod 700 /root/.sapasswd.txt
  1. 创建一个脚本来运行从隐藏文件中调用密码,然后运行 authc_config 用于更新配置的命令:
vi authc_update.sh
示例:
PASSWD=`cat /root/.sapasswd.txt`

authc_config -u administrator -p 'NetWorker_Administrator_Password' -e update-config -D config-id=config_id# -D "config-active-directory=y" -D "config-server-address=ldaps://domain_server_hostname:636/dc=domain,dc=com" -D config-user-dn=”cn=service_account,ou=some_group,dc=domain,dc=com" -D config-user-dn-password="$PASSWD"
提醒:大多数 Linux作系统不处理 authc_config 如果使用命令以明文形式指定服务帐户密码,则正确执行该命令。返回的故障是 LDAP error code 49 - Data 52e,显示 invalid username or password。上面概述的方法可用于在明文输入中隐藏密码。
  1. 设置脚本的权限,使其可执行:
chmod 755 authc_update.sh
  1. 运行脚本: /authc_update.sh
示例:
[root@nsr ~]# cat authc_update.sh                    
PASSWD=`cat /root/.sapasswd.txt`

authc_config -u administrator -p 'Pa$$w0rd01' -e update-config -D config-id=2 -D "config-active-directory=y" -D "config-server-address=ldaps://dc.amer.lan:636/dc=amer,dc=lan" -D "config-user-dn=cn=administrator,cn=users,dc=amer,dc=lan" -D config-user-dn-password="$PASSWD"
[root@nsr ~]# chmod 755 authc_update.sh                        
[root@nsr ~]# ./authc_update.sh                                
Configuration AD is updated successfully.
  1. 通过 NetWorker 的 AD 登录现在应该成功完成。

Additional Information

如果从 NMC 更新配置, 则是 Active Directory标记再次设置为 false。如果必须更新配置,请改用以下方法之一:

如果用于将 AD 或 LDAP 添加到 NetWorker 的绑定帐户已更改,但未在 NetWorker 中更新,也可能会显示 HTTP 500:NetWorker:AD/LDAP 身份验证失败并显示 HTTP 500 “Internal Server Error”

Affected Products

NetWorker

Products

NetWorker Family, NetWorker Series
Article Properties
Article Number: 000204166
Article Type: Solution
Last Modified: 26 Sep 2025
Version:  7
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.