2015-08-30 50 views
5

我有一个IdentityServer3实例建立起来的,我现在用的是授权端点(/核心/连接/授权)请求令牌。的Identity Server 3访问令牌验证端点失败,观众验证失败

我的应用程序请求令牌是一款iOS应用程序。

我通过以下参数;

client_id=<clientid> 
response_type=id_token 
scope=openid 
redirect_uri=<redirecturi> 
state=<state> 
nonce=<nonce> 

这就开辟了一个网页视图对我来说,我输入我的凭据,并返回redirect_uri与附加到URL的#id_token

为了验证我把它传递给我的IdentityServer的访问令牌验证端点(/核心/连接/ 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应该验证它是否有效?

+0

你有没有找到解决这个访问令牌? –

+0

是的,请参阅下面的答案 –

回答

3

在您的示例中,您不请求访问令牌。 随着

response_type=id_token 

您只能获得身份令牌,您可以验证对身份令牌端点。 为了让您的要求,您必须改变你的请求

response_type=id_token token 
+0

谢谢。这对我有效。 –