сайт asp.net wcf аутентификация сервиса данных - PullRequest
1 голос
/ 04 августа 2011

Я создаю веб-сайт с использованием ASP.NET MVC 3 и правильно настроил аутентификацию форм (пользователь может зарегистрироваться и войти в систему).Я хочу настроить службу данных OData WCF, чтобы клиент Windows Phone 7 (Mango Beta 2 Refresh) мог проходить проверку подлинности и запрашивать службу Odata с помощью действий CRUD.Эта идея взята из эпизодов FullStack здесь .Они используют OAuth-вход, но я хотел использовать настройку пользователя, которая у меня уже есть, вместо решения OAuth.

У меня все это работает без аутентификации (приложение MVC с клиентом Odata на wp7), но я хочу сделать службу Odata безопасной.Я думаю, я ищу некоторые статьи или пошаговые руководства о том, как заставить это работать.

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

ОБНОВЛЕНИЕ

Так много исследований было сделано по этому вопросу.В блоге есть официальная серия инструкций для команды WCF здесь .Поскольку аутентификация форм уже настроена в веб-приложении, добавление проверки внутри QueryInterceptor обеспечивает аутентификацию.Однако он использует «стандартную конечную точку аутентификации» для клиентских приложений для фактического «входа», который, кажется, использует базовых провайдеров членства, которые я не использую.Есть ли способ переопределить это?

1 Ответ

2 голосов
/ 04 августа 2011

Вы можете превратить свои настройки проверки подлинности с помощью форм на основе утверждений Поставщик федеративной проверки подлинности (STS), используя Windows Identity Foundation . Затем используйте его для аутентификации вашего приложения wp7 у поставщика STS, а затем отправьте это утверждение (токен) в службу Odata, которая проверит подлинность этого утверждения. Пример тому есть в WIF обучающем комплекте

...