JQuery AJAX вызов службы WCF с пользовательским принципалом - PullRequest
1 голос
/ 02 сентября 2010

Я успешно создал службу WCF, используя webHttpBinding без аутентификации или безопасности.Я могу вызывать свою функцию снова и снова, и она возвращает значение, как и ожидалось.

Теперь я создал пользовательские IAuthorizationPolicy, UserNamePasswordValidator и IPrincipal.Я вернулся к wsHttpBinding (по умолчанию) и сделал нормальную ссылку на службу в коде и соответственно установил ClientCredentials.UserName.UserName и ClientCredentials.UserName.Password, и служба работает отлично.Я изменил имя пользователя, чтобы оно было неправильным, просто чтобы убедиться, что код срабатывает, и, конечно, он не работает.

Итак, я вернул привязку обратно в webHttpBinding, но теперь не могу понять, как установить эти учетные данные через jQuery.Я попытался установить заголовок «Авторизация» для строки в кодировке base64, используя следующую команду Как передать проверку подлинности Windows веб-службе с использованием jQuery? .Независимо от того, что я делаю, я всегда получаю сообщение об ошибке «В контексте авторизации не указан пользовательский участник».

У кого-нибудь есть информация о том, как правильно вызвать службу REST WCF, использующую пользовательский участник?

Ответы [ 2 ]

1 голос
/ 03 сентября 2010

Я пытался сделать то, что невозможно.Я должен использовать стандартный метод HTTP-аутентификации, потому что я работаю с веб-сервисом REST, а не с веб-сервисом wsHttpBinding, который намного больше обернут вокруг него.Я нашел свой ответ здесь:

http://www.leastprivilege.com/FinallyUsernamesOverTransportAuthenticationInWCF.aspx

0 голосов
/ 02 сентября 2010
var html = $.ajax({
  url: "some.jsp",
  username: "sdsdsdsdsd",
  passsword: "xxxxxxxx"
 }).responseText;

попытался просто ввести имя пользователя и пароль

http://api.jquery.com/jQuery.ajax/

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