Проблема с аутентификацией в REST WCF - PullRequest
1 голос
/ 20 августа 2011

Я разработал REST WCF и установил привязку следующим образом в web.config

<bindings>
  <webHttpBinding>
    <binding name="secureBasic">
      <security mode="TransportCredentialOnly">
        <transport clientCredentialType="None" />
      </security>
    </binding>
  </webHttpBinding>
</bindings>

<serviceBehaviors>
    <behavior name="ServiceBehaviour" >
      <serviceCredentials>
        <userNameAuthentication customUserNamePasswordValidatorType="RestService.CustomUsernamePasswordValidator, RestService"
                            userNamePasswordValidationMode="Custom" />
      </serviceCredentials>
      <serviceMetadata httpGetEnabled="true" />
      <serviceDebug includeExceptionDetailInFaults="false" />
    </behavior>

  </serviceBehaviors>

И в файле CustomUsernamePasswordValidator.cs я аутентифицирую пользователя следующим образом

namespace RestService
{
public class CustomUsernamePasswordValidator : UserNamePasswordValidator
{
    public override void Validate(string userName, string password)
    {
        if (!AuthenticateUser(userName, password))
            throw new SecurityTokenValidationException("Invalid Username or Password");
    }

    private bool AuthenticateUser(string userName, string password)
    {
        if (userName == "myaddon" && password == "mypassword")
        {
            return true;
        }
        else
            return false;
    }
}
}

Теперь проблемав том, что он работает хорошо, когда я буду использовать этот сервис из того же проекта, но смущен тем, что этот вызов не будет выполнен для проверки?

Кроме того, когда я проверяю свой файл дополнения heroku manifest от ruby ​​commnad propmpt, это выдает мне ошибкунеудачной аутентификации !!Я думаю, что это проблема моего приложения REST WCF.

Пожалуйста, любой может помочь мне решить эту проблему, если кто-то очень хорошо знает о WCF и аутентификации.

Спасибо, Арун.

1 Ответ

0 голосов
/ 18 октября 2011

Наконец, я обработал пользовательскую аутентификацию, используя WebOperationContext напрямую и пропустил настройки Web.Config.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...