Единый вход с Apache на Windows 7 и Mod_auth_sspi

Я использую сервер apache (xampp 1.7.3) на локальном компьютере с Windows 7. Этот ПК подключен к локальной сети и домену Active Directory, который называется "цвета". Моё локальное имя пользователя - CHRISTOPHER-PC/Christopher, а имя пользователя домена - COLORS/Christopher.

Для подключения администратора к серверу AD я использую сценарий PHP под названием adLDAP. По умолчанию этот скрипт (examples/authenticate.php) предоставляет пользователю два поля ввода для входа в систему. Это отлично работает.

Но я хочу, чтобы мои пользователи автоматически входили в систему, если они вошли в свою учетную запись AD. Для этого я пытаюсь использовать модуль mod_auth_sspi. Но у меня есть некоторые проблемы...:\

Мой httpd.conf выглядит так:

<Directory "C:/xampp/htdocs">
  Options Indexes FollowSymLinks Includes ExecCGI
  AllowOverride All
  Order allow,deny
  Allow from all

  AuthName "A Protected Place"
  AuthType SSPI
  SSPIAuth On
  SSPIAuthoritative On
  SSPIDomain colours
  SSPIOfferBasic On
  SSPIBasicPreferred On
  require valid-user
</Directory>

Когда я захожу на http://localhost/ или http://my-ip-address/ (с другого компьютера), появляется диалоговое окно i и запрашивается имя пользователя и пароль домена. Я знаю, что это вызвано "требовать действительного пользователя", но если я удаляю его, пользователь не входит в систему автоматически.

2 ответа

Сделайте следующее:

  1. Добавьте встроенную аутентификацию в расширенную безопасность IE.
  2. Добавьте ваши URL (http://my-ip-address/) в доверенные зоны.

Я знаю, что это старый пост, но вы проверили, добавляете ли вы свой сайт в список доверенных в IE, что он останавливает всплывающее окно? Если вы сделаете это, в сочетании с require valid-user, он должен работать (с mod_auth_sspi).

Сервис> Параметры> Вкладка "Безопасность"> Локальная интрасеть> Сайты (кнопка) > Дополнительно (кнопка) > Добавить сайт с помощью этого экрана

НТН!

ps: в PHP следующие переменные будут иметь нужную информацию: $_SERVER["REMOTE_USER"] И $_SERVER["PHP_AUTH_USER"]. Они будут содержать "домен / имя пользователя".

Другие вопросы по тегам