Я разработал 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 и аутентификации.
Спасибо, Арун.