Мое предположение: у вас есть полный контроль над вашим приложением/доменом php, но другая команда управляет сервером sharepoint. Также предположим, что вы можете попросить команду sharepoint создать простой веб-сайт для ваших функций единого входа.
Если это так, вы можете попросить команду sharepoint создать веб-страницу, на которой есть ссылка на ваш сайт. Когда пользователь нажимает на ссылку, запрос возвращается серверу sharepoint, сервер sharepoint принимает имя пользователя для входа в систему, шифрует его с помощью открытого ключа и добавляет его к URL-адресу на вашем php-сайте, а затем отправляет его как перенаправление обратно в браузер. Таким образом, место выглядит следующим образом:
https://your.php.domain/sso.php?logon=encrypted_users_logon_name&api_key=some_token
Вашего sso.php скрипт проверит api_key является действительной лексемой от вашего Sharepoint партнера, а затем расшифровать имя входа пользователя пытается войти в Вы можете. получить больше фантазий и иметь обратный вызов на сайте sharepoint, чтобы подтвердить, что запрос на вход в систему является законным в течение некоторого временного окна, или испечь это в зашифрованном имени входа, но это - простой способ сделать это, предполагая, что вы доверяете запросам, исходящим из партнер sharepoint.
Разработчики sharepoint .net, вероятно, смогут выполнить любое шифрование, поэтому выберете алгоритм, который вы можете использовать на обеих сторонах php и .net, и дайте им ключ для использования для шифрования и формат информации для шифрования. что-то вроде n = logon_name; expire = timestamp; тогда, когда вы расшифровываете, если это после истечения срока, вы отказываетесь от входа в систему.
Звучит неплохо. В следующие несколько дней я отдам это. Спасибо! – ciscocert 2008-10-28 20:17:53