Совместное использование учетных данных между веб-сайтом ASP.NET и SharePoint 2007 - PullRequest
1 голос
/ 04 января 2011

Вот моя проблема:

1) У меня есть веб-сайт ASP.NET, который является основной точкой входа в приложение.
Этот веб-сайт использует проверку подлинности с помощью форм, которая проверяет учетные данные (имя пользователя / пароль)против базы данных.

2) После входа на веб-сайт пользователю отображается страница, содержащая несколько ссылок, которые указывают на приложение Sharepoint 2007, где проверка подлинности управляется Active Directory.

3) Каждый пользователь в Active Directory дублируется в базе данных, управляющей аутентификацией веб-сайта ASP.NET.

4) Веб-сайт ASP.NET и приложение SP 2007 НЕ в одном домене.

Проблема, с которой мы сталкиваемся, заключается в том, что пользователи сначала должны ввести свои учетные данные для доступа к веб-сайту ASP.NET.Затем, щелкнув ссылку, указывающую на приложение SP 2007, они предлагают другое окно, похожее на .htaccess, чтобы аутентифицировать их в Active Directory.

Вопрос в следующем:
Можно ли как-то передать учетные данные, которые пользователь впервые ввел для доступа к веб-сайту ASP.NET в контексте HTTP, чтобы при нажатии нассылку, указывающую на SP 2007, его не просят вводить свои учетные данные снова?
Я уже успешно проверил учетные данные в AD, но я застрял в том, где я должен расширить процесс проверки подлинности ASP.NET, чтобы яможет ввести учетные данные домена, связанные с SP, в контекст.

Надеюсь, я был ясен, не стесняйтесь спрашивать дополнительную информацию, если это необходимо.
И просто для ясности, обход первого шага (аутентификация веб-сайта ASP.NET) обязателен: -)

Спасибо всем,
Мик

1 Ответ

1 голос
/ 06 января 2011

Есть ли на sharepoint аутентификация на основе ntlm или форм? (Я предполагаю, что ntlm из-за раздачи логина)

Я построил что-то подобное с помощью форм sharepoint auth, где:

  • 1. Пользователь входит в приложение ASP.NET
  • 2.Auth cookie создан
  • 3.Токен Auth хранится в базе данных
  • 4. Пользователь переходит на sharepoint
  • 5. Пользовательский HttpModule проверяет cookie и токен
  • 6.Включает пользователя в sharepoint с помощью HttpApplication.AuthenticateRequest и FormsAuthenticationTicket

Полагаю, вы могли бы сделать что-то подобное с аутентификацией ntlm, но это может быть невозможно, так как браузер выполняет аутентификацию. Целая куча разных заголовков отправляется. (например, WWW-авторизация авторизации). Следует отметить, что разработка пользовательского HttpModule не является задачей новичка.

Вы сказали: 3) Каждый пользователь в Active Directory дублируется в базе данных, управляющей аутентификацией веб-сайта ASP.NET. Я надеюсь, что пароли не являются открытым текстом в этой базе данных

И сказал: И чтобы было ясно, обход первого шага (аутентификация веб-сайта ASP.NET) обязателен :-) Вы имеете в виду "не является обязательным"?

...