Web ブラウザー経由で Api を正常に呼び出すことができます。IdentityModel を使用すると問題なく動作します。しかし、Fiddler 経由で API を呼び出そうとすると、invalid_client が発生します。私のクライアント情報は、MembershipReboot Client テーブルに基づくデータベースから取得されます。
Post Body と Authentication basic を介してデータを渡そうとしました。どちらも失敗します。
Authentication Basic でエンコードされたパラメーターを使用して呼び出す場合、次のようになります>
User-Agent: Fiddler
Host: qaquasaridentity
Content-Length: 0
Content-Type: application/x-www-form-urlencoded
Authorization: Basic dGVzdC5hcGk6c2VjcmV0
Fiddler で実際にエンコードされた値は次のとおりです。
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 がありますが、エラー ログにはそうではありません。誰かが私が間違っていることを説明できますか? バックエンドで .NET 経由で access_token を取得できますが、Fiddler 経由では取得できません。