为每个客户端应用程序终端用户设置 Active Directory Domain Controller 服务器、AX 服务器和桌面环境以配置集成 Windows 验证。集成 Windows 身份验证允许 AX 客户端用户启用单点登录访问控制。
说明
在服务器操作系统上运行的 AX 客户端实例不支持集成 Windows 身份验证。您必须从客户端操作系统进行连接,否则应用程序默认使用基于表单的身份验证。
集成 Windows 身份验证使用 Windows 客户端和服务器的安全功能。它不提示用户输入用户名和密码,并且客户端计算机上的当前 Windows 用户信息由 Web 浏览器通过加密交换提供。以下协议用于管理身份验证:
如果身份验证交换开始时无法识别用户,则 Web 浏览器将提示用户输入 Windows 用户帐户的用户名和密码。
在 Active Directory 中创建一个新的 Windows 服务主体名称 (SPN) 帐户,将 AX 服务器验证映射到一个 Active Directory 帐户。
使用 ktpass 命令将 AX 服务器验证服务映射到 Active Directory SPN 帐户。
默认位置是 c:\Program Files\Support Tools。
ktpass /out filename /princ name /pass password /mapuser local_username /ptype principal_type /crypto encryption_type
要了解 ktpass 语法,请参考 Microsoft Ktpass 参考。
ktpass /out 'C:\ax.keytab' /princ HTTP/axserver.ax.com@AX.COM /pass pass1234 /mapuser AXSSO /ptype KRB5_NT_PRINCIPAL /crypto RC4-HMAC-NT
使用 setspn 命令注册 AX 连接器服务的 SPN。
默认位置是 c:\Program Files\Support Tools。
setspn -A ACLSE/full_domain_and_servername computer_name
说明
ACLSE 是标识 AX 连接器所需的值,并且在输入时必须全部大写。computer_name 值可以输入为名称或域\名。
setspn -L computer_namesetspn -A ACLSE/axserver.acl.com axserver
您还可以将 keytab 文件复制到 AX 服务器实例,然后使用 kinit 命令来测试您的 SPN 帐户映射。
先决条件:将 Java bin 子文件夹添加到您的路径环境变量,以使用 klist 命令而无需指定完整路径。
set PATH=java_bin_path;%PATH%
klist -k
kinit username@REALM.COM
[libdefaults] ticket_lifetime = 24000 default_realm = <域> default_keytab_name = <keytab 文件的路径> dns_lookup_realm = false dns_lookup_kdc = false default_tkt_enctypes = rc4-hmac default_tgs_encrypes = rc4-hmac [realms] <域> = { kdc = <adserver.domain.com>:88 } [domain_realm] <.domain> = <域> <domain> = <域>
在每个终端用户桌面环境中,从 Internet Explorer 启用集成 Windows 验证。用户必须从客户端操作系统进行连接,在服务器操作系统上运行的 AX 客户端实例不支持集成 Windows 身份验证。
示例:https://axserver.ax.com。
下次启动 Internet Explorer 时,更新的设置会生效。