php - 如何从 Active Directory 填充 Apache 服务器中的 REMOTE_USER(SSO 相关)

标签 php apache joomla single-sign-on

我正在使用 Joomla 3.3.3 为我们公司构建一个 Intranet 站点。

我已将虚拟机配置为使用带有标准 LAMP 堆栈的 Ubuntu 14.04 运行。我还安装了 Joomla,它可以与我们公司的 Active Directory 一起使用(用户可以从我们网络上的任何机器登录该站点,并且 Joomla 可以识别他们)。

我现在正在尝试实现 SSO,以便我们的员工在登录到他们的工作站时无需登录该站点,并且通过我的故障排除,我已将其缩小到“REMOTE_USER”变量而不是由 APACHE 服务器填充(该变量甚至没有出现在我的 phpinfo() 页面上)

我认为我在 Joomla 和 PHP 方面的工作知识渊博,但我的 Apache 服务器和 Ubuntu 技能非常薄弱。

我的用户需要在 Apache 服务器中进行身份验证吗?我真的只需要 Windows 机器将 Remote_User token 传递给 Joomla,但我不知道如何在 Ubuntu 中执行此操作。

最佳答案

第一步涉及通过组策略进行更改,将您的 Joomla 站点添加到 Internet Explorer 的 Intranet 安全组中。 Google Chrome 和 Firefox 尊重 IE 安全组设置。

一旦您完成此操作,每当您的用户从经过域身份验证的计算机浏览您的站点时,浏览器将自动发送一个带有已经过身份验证的用户名的用户 header ,这可以在 PHP 中使用 $_SERVER['PHP_AUTH_USER' ] 超全局。

关于php - 如何从 Active Directory 填充 Apache 服务器中的 REMOTE_USER(SSO 相关),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25333801/

相关文章:

apache - Ubuntu 12.04 AllowOverride All 抛出内部服务器错误

apache - 需要拒绝除我之外的所有 IP 访问站点并显示友好错误

php - 如何强制注册 K2 而不是 joomla 注册?

css - 如何修复 Joomla 网站文本迷失方向/位移?

css - 样式化 Joomla 内容——首字下沉 CSS

php - 请求 PHP 文件时 PJAX 不工作

php - WooCommerce 获取类别 slug - 带有函数的未定义属性通知

php - 如何在 Laravel 5.2 中获得与外键的多对多关系?

php - 如果电子邮件已发送,则从邮件服务器获取响应

java - 如何创建我自己的 Apache Camel Quickfixj 组件分支?