Пример использования AuthType Дайджест для аутентификации пользователя Однажды через суб-доменов ?

у меня есть домен, который будет осуществляться с помощью небольшой группы частных лиц. Поэтому я хочу, чтобы контролировать доступ с помощью аутентификации.

В домене имеется набор установленных приложений, каждое из которых имеет свой собственный поддомен. Например: domain.com, app1.domain.com, app2.domain.com, app3.domain.com

я бы хотел, чтобы single sign-on решения, поэтому они не должны аутентифицироваться для каждого приложения. Кроме того, в приложениях, написанных на различных языках программирования (PHP, Perl и Python), поэтому аутентификация пользователей с помощью модуля Apache является идеальным.

я новичок в дайджест-проверку подлинности, но кажется, хорошее решение. Я использовал htdigest, чтобы создать для своих пользователей. Я настроить мой домен и поддомены (См. ниже).

Если я пойду к домену или любой суб-доменов он будет запрашивать имя пользователя и пароль. Если я ввожу правильный логин и пароль, он будет проверять меня, и страница будет загружаться. Однако, если я пойду в другой суб-домен, то он будет просить меня, чтобы ввести имя пользователя и пароль еще раз. Если я ввожу логин и пароль, он будет работать.

Итак, файл паролей ОК, и аутентификации в порядке, но проблема, похоже, заключается в конфигурации AuthDigestDomain.

я искал по всей сети, чтобы найти пример использования Дайджест-проверку подлинности на несколько доменов, но я не могу найти конкретный пример, который решает мою проблему.

я надеюсь, что здесь кто-то может помочь. Я помещаю же аутентификации информации в каждом Directory? Я должен быть using Directory или Location или Files? Я что-то пропустил все вместе?

заранее Спасибо!

Ниже приведен пример моей конфигурации Apache для domain.com:

<Directory /var/www>
  AuthType Digest
  AuthName "realm"
  AuthDigestAlgorithm MD5
  AuthDigestDomain / http://domain.com/ http://app1.domain.com/ http://app2.domain.com/ http://app3.domain.com/
  AuthDigestNcCheck Off
  AuthDigestNonceLifetime 0
  AuthDigestQop auth
  AuthDigestProvider file
  AuthUserFile /etc/apache2/.htpasswd-digest
  AuthGroupFile /dev/null
  Require valid-user
</Directory>

И вот пример app1.domain.com:

<Directory /var/lib/app1>
  AuthType Digest
  AuthName "realm"
  AuthDigestAlgorithm MD5
  AuthDigestDomain / http://domain.com/ http://app1.domain.com/ http://app2.domain.com/ http://app3.domain.com/
  AuthDigestNcCheck Off
  AuthDigestNonceLifetime 0
  AuthDigestQop auth
  AuthDigestProvider file
  AuthUserFile /etc/apache2/.htpasswd-digest
  AuthGroupFile /dev/null
  Require valid-user
</Directory>

С толку вещи еще больше, это работает, когда с помощью IE6, но не в Firefox или Chrome. Это клиенты, не передавая аутентификации правильно, или это сервер не посылает правильные учетные данные?

кроме того, я читал о RFC 2617 и написаны заголовки проверки подлинности с использованием PHP, чтобы убедиться, что запрос/ответ (challenge-это правильно. Это не помогло!

Найдено 3 ответа:

Example of using AuthType Digest to authenticate a user once across sub-domains?

http://stackoverflow.com/questions/357939/example-of-using-authtype-digest-to-authenticate-a-user-once-across-sub-domains

Посмотреть решение →