PHP на Windows: Как использовать веб-сервисы с идентификатором вошедшего в систему пользователя? - PullRequest
2 голосов
/ 08 августа 2010

У меня есть сервер интрасети на основе Windows 2008R2, на котором запущено приложение интрасети на основе PHP в IIS. Мы хотим улучшить внутреннюю сеть и интегрировать данные из внешних систем, например, данные, полученные из веб-служб Exchange, или информацию из веб-службы Sharepoint.

Вход для пользователей с их учетными данными Windows работает. И PHP, работающий как FastCGI, отлично подражает.

Проблема сейчас: Я не могу получить доступ к веб-сервисам с аутентификацией Windows, передавая учетные данные вошедшего в систему пользователя.

Я не смог найти что-либо связанное с этой проблемой в интернете. Я единственный в мире, кто хочет объединить контент с определенных серверов Windows в существующее PHP-приложение?

Я знаю, что могу легко сделать это в .NET ... но я просто не могу воссоздать все приложение интрасети.

Любые указатели очень мне помогут!

Спасибо, Fabian

Ответы [ 3 ]

0 голосов
/ 08 августа 2010

В мире we services аутентификация / SSO выполняется с помощью SAML.SAML в основном является специфической разновидностью обмена сообщениями SOAP, поэтому теоретически расширение PHP SOAP должно быть достаточно, чтобы справиться с этим, хотя здесь я буду действовать осторожно, поскольку мой опыт работы с PHP SOAP заключается в том, что он довольно глючный, очень простой и плохо документированный.,Я нашел следующее в Window Auth / SAML, не уверен, что это будет работать для вас:

http://technet.microsoft.com/en-us/library/ff607753.aspx

Наслаждайтесь!

0 голосов
/ 06 июня 2017

Установите PHP в IIS и включите аутентификацию Windows.Тогда вы получите имя пользователя в шапке.Или вы можете использовать mod_auth_kerb из apache для этого.

0 голосов
/ 08 августа 2010

Я играл с Windows-аутентификацией против PHP несколько лет назад, и мне пришлось сдаться из-за нехватки времени.Однако я думаю, что единственный способ пойти сюда - это попытаться получить что-то в kerberos, который (в случае, если вы не знаете) - это пользователь с помощью windows в качестве системы аутентификации.

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

У меня нет опыта в этой области, поэтому я извиняюсь, если это не поможет вам в дальнейшем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...