Создание сервиса.NET WCF для iPhone с аутентификацией
Попытка создать очень простую службу WCF, которая будет передавать данные в приложение для iPhone.
Хотелось бы использовать базовую аутентификацию какого-то рода, скорее всего, имя пользователя / пароль или токен какого-то рода.
Имея несколько проблем с поиском какой-либо хорошей документации по этому вопросу, поэтому любая помощь будет принята с благодарностью!
Ура, Тим
1 ответ
Решение
Для тех, кто заинтересован, я решил это следующим образом:
В web.config под system.servicemodel:
<behaviors>
<serviceBehaviors>
<behavior name="default">
<serviceAuthorization serviceAuthorizationManagerType="Your.ServiceAuthorizationManager"></serviceAuthorization>
</behavior>
</serviceBehaviors>
</behaviors>
<services>
<service name="Your.WCF.Service" behaviorConfiguration="default">
</services>
Затем в обработке вашего менеджера (класс Your.ServiceAuthorizationManager) у вас есть доступ к запросу в контексте операции, вы можете авторизовать и вернуть true, если авторизовано, и false, если нет.
public class Your.ServiceAuthorizationManager : ServiceAuthorizationManager
{
protected override bool CheckAccessCore(OperationContext operationContext)
{
// Validate request here...
return true;
}
}
- Очевидно, что копирование и вставка этого кода не сработает, вам придется редактировать в нескольких местах.
Надеюсь, это поможет кому-то!