【问题标题】:How to use windows authentification with php / symfony如何在 php/symfony 中使用 windows 身份验证
【发布时间】:2014-10-21 01:48:16
【问题描述】:

我在 Symfony 应用程序内联网上工作。 我听说可以使用身份验证窗口,而不必使用传统的身份验证窗口登录。

谁能给我关于这个主题的 1 或 2 个链接地址?我搜索了自己,但找不到正确的关键字。 他是WSSE吗?

提前谢谢你!

【问题讨论】:

  • 您是否在与用户的 windows 计算机一起位于 AD 中的 IIS 服务器上运行此应用程序?
  • 是的,完全正确,我使用带有 AD 的 IIS 服务器
  • 然后您可以在您的 IIS 界面中将网站的访问权限设置为“域用户”或类似的东西。之后,您可以检查 PHP 中包含 domain\user 信息的 $_SERVER['PHP_AUTH_USER'] 变量。您甚至不需要显示任何登录对话框。
  • 谢谢你,这正是我想要做的!如果用户在网络中,则无事可做,它会自动登录。如果他打开一个隐身窗口,就好像他没有网络,因此会自动打开一个身份验证窗口。

标签: php windows session authentication


【解决方案1】:

如果您在 Windows 服务器上的 IIS 实例上运行 PHP 应用程序,该实例与使用此应用程序的其他计算机位于 AD 中,您可以在 IIS 界面中为“匿名”用户关闭对网站的访问。

之后,您可以检查 PHP 中包含 domain\user 信息的 $_SERVER['AUTH_USER']/$_SERVER['PHP_AUTH_USER'] 变量之一。您甚至不需要显示任何登录对话框。所以这是一个 SSO(单点登录)过程。

有关更多信息,请参阅下面的链接:

http://www.iis.net/learn/application-frameworks/install-and-configure-php-on-iis/enable-php-applications-to-make-application-level-access-control-decisions

【讨论】:

    【解决方案2】:

    如果您所说的“识别窗口”是您必须在其上输入 id 并传递的小警报,而不是 HTML 表单,那么您只需看一下 htaccess 和 htpassword 的方向,因为这个小窗口是由htacces 保护。

    请看这里(例如): http://www.seas.upenn.edu/cets/answers/auth-htpasswd.html

    最好的问候 彼得

    【讨论】:

      【解决方案3】:

      上面的 TiMESPLiNTER 的进一步评论

      在我们的 IIS 设置 (IIS 7.5) 中,相关的服务器变量是 $_SERVER['AUTH_USER'] 所以如果它一开始不起作用,请尝试使用 phpinfo() 为您的站点找到正确的变量。

      【讨论】:

      • 感谢您提及这一点。但这应该是对我的回答的评论。
      • 非常正确,但您需要 50 点声望点才能评论其他人的答案,而我对此仍然很陌生。
      • 哦忘了。那么对不起......不知何故是一个愚蠢的规则......至少在这种情况下是这样。
      猜你喜欢
      • 1970-01-01
      • 2016-04-04
      • 2019-01-16
      • 1970-01-01
      • 1970-01-01
      • 2017-12-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多