我管理一个应用程序,该应用程序允许使用有效的 AD 用户进行单点登录,并且当前在 IIS 上运行。为了提高性能,我有一个任务将 web 层迁移到 Linux 上的 Apache/Php。
我在Win2012服务器上有一个AD,在CentOS上有一个Apache。我已经成功加入域(TEST.COM),并且可以使用Windows用户帐户登录centos。
我还配置了 Kerberos 和 Samba,并且 SSO 可以工作,但有一个问题。
来自 AD 的用户导入到应用程序中时不带域名前缀/后缀。因此,如果我的用户在 AD 中是 TEST\myUser,那么在应用程序中用户就是 myUser。
应用程序从 REMOTE_USER 变量中读取用户名,但用户名附加了 @DOMAIN 字符串,导致完整的用户名是 myUser@TEST.COM。应用程序自然会认为它不是有效用户,因为它希望它只是 myUSer。如果我在名为 myUser@TEST.COM 的应用程序中添加一个新用户,则 SSO 可以正常工作。
有没有办法丢弃 REMOTE_USER 变量中的 @DOMAIN 属性?您将如何执行以及需要配置哪些文件?