Интеграция приложений ASP.NET с GSA с Kerberos - PullRequest
0 голосов
/ 08 апреля 2011

Наша компания приобрела GSA (GSA 6.8.0.G.30), и мы пытаемся интегрировать поиск в наше приложение портала (ASP.NET). Kerberos уже настроен на GSA, я могу использовать IE, чтобы сделать безопасный поиск с использованием default_frontend, и я могу получить безопасный результат без входа через форму входа.

Тем не менее, у нас есть некоторые проблемы, когда мы пытаемся интеграции поиск на нашем портале, из нашего кода ASP.NET, мы можем получить пользователя WindowsIdentity и создайте WindowsImpersonationContext , затем мы используем объект HttpWebRequest для отправки поиска, GSA первый ответ с 302 и транспортный URL "https://my_gsa_hostname/security-manager/ samlauthn? SAMLRequest = fZLLTsM ... ", затем мы создаем новые точки запроса на новый URL GSA возвращает 401-несанкционированный.

Кто-нибудь может пролить нам свет?

1 Ответ

1 голос
/ 20 июня 2011

WindowsIdentity и WindowsImpersonationContext не могут делегировать по умолчанию. Вам нужно настроить делегирование доверия. Ваш запрос между отправляется в GSA анонимно. Некоторое время назад я написал запись в блоге о том, как написать код .NET для рукопожатия с устройством. Вы можете прочитать это здесь:

http://www.mcplusa.com/blog/2009/06/remotely-calling-the-google-search-appliance-restful-web-services-when-saml-is-enabled/

Ключом будет получение вашего сайта для аутентификации ваших пользователей с помощью Kerberos, так как NTLM не может быть делегирован. Итак ... Kerberos на веб-сайт GSA.

До использования Universal Login Manager мы используем Windows Saml Bridge для автоматической аутентификации. Есть отличный документ, описывающий настройку kerberos

http://code.google.com/p/google-saml-bridge-for-windows/wiki/ConfigKerberos

...