Identity Server 3 访问令牌验证端点因受众验证失败而失败
Identity Server 3 Access Token Validation endpoint fails with Audience Validation Failed
我设置了一个 IdentityServer3 实例,我正在使用授权端点 (/core/connect/authorize) 请求令牌。
我请求令牌的应用程序是一个 iOS 应用程序。
我传递了以下参数;
client_id=<clientid>
response_type=id_token
scope=openid
redirect_uri=<redirecturi>
state=<state>
nonce=<nonce>
然后这会为我打开一个 Web 视图,我输入我的凭据,它 returns redirect_uri
#id_token
附加到 url。
为了验证令牌,我将其传递到我的 IdentityServer 的访问令牌验证端点 (/core/connect/accesstokenvalidation)。我附加 ?token=<access token received from login>
.
然后我得到回复
{ "Message": "invalid_token" }
当我查看日志时
System.IdentityModel.Tokens.SecurityTokenInvalidAudienceException: IDX10214: Audience validation failed. Audience: '<clientid>'. Did not match: validationParamters.ValidAudience: '<identity_server_host>/resources' or validationParameters.ValidAudiences: 'null'
我在这里做错了什么?创建令牌的 IdentityServer 是否应该验证它是否有效?
您没有在示例中请求访问令牌。
有
response_type=id_token
您只能获得可以根据身份令牌端点进行验证的身份令牌。
要通过您的请求获取访问令牌,您必须将您的请求更改为
response_type=id_token token
我设置了一个 IdentityServer3 实例,我正在使用授权端点 (/core/connect/authorize) 请求令牌。
我请求令牌的应用程序是一个 iOS 应用程序。
我传递了以下参数;
client_id=<clientid>
response_type=id_token
scope=openid
redirect_uri=<redirecturi>
state=<state>
nonce=<nonce>
然后这会为我打开一个 Web 视图,我输入我的凭据,它 returns redirect_uri
#id_token
附加到 url。
为了验证令牌,我将其传递到我的 IdentityServer 的访问令牌验证端点 (/core/connect/accesstokenvalidation)。我附加 ?token=<access token received from login>
.
然后我得到回复
{ "Message": "invalid_token" }
当我查看日志时
System.IdentityModel.Tokens.SecurityTokenInvalidAudienceException: IDX10214: Audience validation failed. Audience: '<clientid>'. Did not match: validationParamters.ValidAudience: '<identity_server_host>/resources' or validationParameters.ValidAudiences: 'null'
我在这里做错了什么?创建令牌的 IdentityServer 是否应该验证它是否有效?
您没有在示例中请求访问令牌。 有
response_type=id_token
您只能获得可以根据身份令牌端点进行验证的身份令牌。 要通过您的请求获取访问令牌,您必须将您的请求更改为
response_type=id_token token