Пройдите проверку подлинности против ldap, использующего PHP, активный каталог, при использовании IE/Firefox

var sums = Orders.GroupBy(x => new { x.CustomerID, x.ProductID })
                 .Select(group => group.Sum(x => x.ProductCount));
6
задан Travis Heseman 18 November 2009 в 02:04
поделиться

2 ответа

На самом деле вам не нужно связываться с сервером Active Directory из вашего кода PP для достижения желаемого, учитывая тот факт, что вы используете IIS в качестве веб-сервера.

Ключевым словом здесь является Встроенная проверка подлинности Windows - это формулировка, которую djn искал . Если этот параметр включен (и анонимный доступ запрещен) IIS будет проверять предоставленные учетные данные на соответствие Active Directory и привилегиям файловой системы NTFS запрошенных ресурсов. Таким образом, вы можете контролировать доступ к своим файлам, используя простые механизмы контроля доступа NTFS.

Если ваши пользователи используют IE, они даже не используют его. им необходимо ввести свои учетные данные, поскольку это делается автоматически через так называемый SPNEGO (простой и защищенный механизм согласования GSSAPI) и его базовые механизмы Kerberos или NTLMSSP в зависимости от на то, что ваш клиент и сервер способны обрабатывать.

Насколько мне известно, Firefox также может автоматически передавать учетные данные для входа в Windows на ваш сервер. Вам нужно только настроить параметр конфигурации , чтобы включить эту функцию - не знаю, действительна ли эта информация для Firefox 3.5.x.

Если вы используете Apache на * nix- системе вам придется прибегнуть к некоторому серверному модулю для обработки интегрированной системы аутентификации Windows -подобной системе. Возможные варианты (не знаю, поддерживаются ли они на самом деле или стабильны):

Для Apache в Windows есть:

Имейте в виду, что большинство этих модулей кажутся очень старыми.

8
ответ дан 10 December 2019 в 02:50
поделиться

Сейчас работаю над аналогичной настройкой: я пропустил весь этот LDAP-материал, когда веб-сервер аутентифицирует клиента с помощью AD, прежде чем впустить его (извините, я не могу вспомнить, как это называется альтернативная вселенная M $).

Если клиент достигает сценария PHP, он находится в AD, и у меня есть его имя пользователя в $ _ SERVER ["AUTH_USER"] и в $ _ SERVER ["LOGON_USER "] , иначе он никогда не доберется до сценария.

1
ответ дан 10 December 2019 в 02:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: