Я могу успешно позвонить в свой Api через веб-браузер. Использование IdentityModel отлично работает. Но когда я пытаюсь вызвать Api через Fiddler, я получаю invalid_client. Информация о моих клиентах поступает из базы данных на основе таблиц MembershipReboot Client.Невозможно получить токен доступа через Fiddler IdentityServer3
Я пробовал передавать данные через тело сообщения и через базовую аутентификацию. Оба терпят неудачу.
При вызове с помощью аутентификации Basic закодированных параметров У меня есть следующие>
User-Agent: Fiddler
Host: qaquasaridentity
Content-Length: 0
Content-Type: application/x-www-form-urlencoded
Authorization: Basic dGVzdC5hcGk6c2VjcmV0
Фактическое кодированное значение Скрипач показывает:
No Proxy-Authorization Header is present.
Authorization Header is present: Basic dGVzdC5hcGk6c2VjcmV0
Decoded Username:Password= test.api:secret
Когда я звоню с помощью Post Body для параметров, передаваемые данные это:
client_id=test.api
&client_secret=secret
&grant_type=client_credentials
&scope=testapi
В журнале сервера указано
2017-01-20 12:06:13.968 -06:00 [Debug] Start client validation
2017-01-20 12:06:13.971 -06:00 [Debug] Start parsing Basic Authentication secret
2017-01-20 12:06:13.973 -06:00 [Debug] Start parsing for secret in post body
2017-01-20 12:06:13.973 -06:00 [Debug] No secret in post body found
2017-01-20 12:06:13.976 -06:00 [Debug] Start parsing for X.509 certificate
2017-01-20 12:06:13.976 -06:00 [Debug] client_id is not found in post body
w3wp.exe Information: 0 : 2017-01-20 12:06:13.976 -06:00 [Information] Parser found no secret
w3wp.exe Information: 0 : 2017-01-20 12:06:13.981 -06:00 [Information] No client secret found
w3wp.exe Information: 0 : 2017-01-20 12:06:13.983 -06:00 [Information] End token request
w3wp.exe Information: 0 : 2017-01-20 12:06:13.988 -06:00 [Information] Returning error: invalid_client
У меня есть client_id и client_secret, но журнал ошибок говорит иначе. Может ли кто-нибудь объяснить, что я делаю неправильно? Я могу получить свой access_token через .NET на сервере, но не через Fiddler.
я получаю ту же ошибку делает, что хорошо. Но журнал ошибок теперь говорит о некорректном алгоритме хэширования. Я предоставляю информацию через PostBody, как в вашем примере. – Keith
Похоже, есть дополнительное свободное пространство между «Основным» и вашим запрошенным base64 clientid: clientsecret. Может ли это так? –
Не является ли аутентификация базовой факультативной? если я использую PostBody, как в вашем примере, тогда мне не нужна аутентификация Basic XXXXX. Верный? – Keith