在我的AccessTokenLifetime后超过5分钟对我的MVC应用程序执行ajax调用时,access_token的ClaimsPrincipal值为null。
我尝试使用CodeAuthorizationCodeAsync和RequestRefreshTokenAsync,使用缓存的代码值&分别是redirect_uri和refresh_token,但这些调用都返回invalid_grant错误。我们的openId配置列出了grant_types_supported下的authorization_code和refresh_token。我已经尝试在超时之前运行此代码,并且两次调用都会出现相同的错误。
请求是否来自javascript阻止我获取新的访问代码?在此先感谢您的考虑和帮助
以下是我的设置的一些示例:
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
AuthenticationType = "Cookies",
SlidingExpiration = true,
ExpireTimeSpan = TimeSpan.FromMinutes(60)
});
app.Map("/js", api =>
{
api.UseIdentityServerBearerTokenAuthentication(new IdentityServerBearerTokenAuthenticationOptions
{
Authority = Constants.IdentityServerUrl,
RequiredScopes = new[] { "scope1", "offline_access" },
ValidationMode = ValidationMode.Both
});
});
if (string.IsNullOrEmpty(accessToken))
{
var client = new TokenClient(
Identity.Constants.TokenEndpoint,
Identity.Constants.IdentityClientId,
Identity.Constants.IdentityClientSecret);
var tokenResponse = client.RequestRefreshTokenAsync(refreshToken).Result;
Identity Server日志
2016年9月26日,下午2:30:59 - 请求 GET / api / users 请求URL:local-urlcode:401Server响应时间:15.26 msRequest URL base:/ api / users
2016年9月26日,下午2:30:59 - 定制活动 秘密验证器成功:{0} 设备类型:PC
2016年9月26日,下午2:30:59 - 定制活动 结束令牌请求 设备类型:PC
2016年9月26日,下午2:30:59 - 定制活动 返回错误:invalid_grant 设备类型:PC
2016年9月26日,下午2:30:59 - 定制活动 启动令牌请求验证 设备类型:PC
2016年9月26日,下午2:30:59 - 定制活动 无效的授权码:f2e8a4ce0eef941ab883344559a7183e {" ClientId":" identitymgmt"," ClientName":" Identity Management"," GrantType&#34 ;:" authorization_code"," AuthorizationCode":" f2e8a4ce0eef941ab883344559a7183e"," ... 设备类型:PC
2016年9月26日,下午2:30:59 - 定制活动 客户验证成功 设备类型:PC
2016年9月26日,下午2:30:59 - 定制活动 开始验证授权代码令牌请求 设备类型:PC
2016年9月26日,下午2:30:58 - 定制活动 启动令牌请求 设备类型:PC
2016年9月26日,下午2:30:58 - 定制活动 解析器发现了秘密:{0} 设备类型:PC
2016年9月26日,下午2:30:58 - 定制活动 开始解析基本身份验证密码 设备类型:PC
2016年9月26日,下午2:30:58 - 定制活动 发现尸体没有秘密 设备类型:PC
2016年9月26日,下午2:30:58 - 定制活动 发现密码id:{0} 设备类型:PC
2016年9月26日,下午2:30:58 - 定制活动 在帖子正文中找不到client_id 设备类型:PC
2016年9月26日,下午2:30:58 - 定制活动 开始解析X.509证书 设备类型:PC
2016年9月26日,下午2:30:58 - 定制活动 启动客户端验证 设备类型:PC
2016年9月26日,下午2:30:58 - 定制活动 开始在帖子正文中解析秘密 设备类型:PC
2016年9月26日,下午2:30:58 - 请求 POST / core / connect / token 请求URL:http:// [idp-server-address] / core / connect / tokenResponse代码:400Server响应时间:23.62 msRequest URL base:/ core / connect / token
2016年9月26日,下午2:30:58 - 定制活动 结束令牌请求 设备类型:PC
2016年9月26日,下午2:30:58 - 定制活动 返回错误:invalid_grant 设备类型:PC
2016年9月26日,下午2:30:58 - 定制活动 无效的授权码:f2e8a4ce0eef941ab883344559a7183e {" ClientId":" identitymgmt"," ClientName":" Identity Management"," GrantType&#34 ;:" authorization_code"," AuthorizationCode":" f2e8a4ce0eef941ab883344559a7183e"," ... 设备类型:PC
2016年9月26日,下午2:30:58 - 定制活动 开始验证授权代码令牌请求 设备类型:PC
2016年9月26日,下午2:30:58 - 定制活动 启动令牌请求验证 设备类型:PC
2016年9月26日,下午2:30:58 - 定制活动 秘密验证器成功:{0} 设备类型:PC
2016年9月26日,下午2:30:58 - 定制活动 客户验证成功 设备类型:PC
2016年9月26日,下午2:30:58 - 定制活动 解析器发现了秘密:{0} 设备类型:PC
2016年9月26日,下午2:30:58 - 定制活动 发现密码id:{0} 设备类型:PC
2016年9月26日,下午2:30:58 - 定制活动 开始解析基本身份验证密码 设备类型:PC
2016年9月26日,下午2:30:58 - 定制活动 开始在帖子正文中解析秘密 设备类型:PC
2016年9月26日,下午2:30:58 - 定制活动 发现尸体没有秘密 设备类型:PC
2016年9月26日,下午2:30:58 - 定制活动 在帖子正文中找不到client_id 设备类型:PC
2016年9月26日,下午2:30:58 - 定制活动 开始解析X.509证书 设备类型:PC
2016年9月26日,下午2:30:58 - 定制活动 启动客户端验证 设备类型:PC
2016年9月26日,下午2:30:58 - 定制活动 启动令牌请求 设备类型:PC
2016年9月26日,下午2:30:58 - 请求 POST / core / connect / token 请求URL:http:// [idp-server-address] / core / connect / tokenResponse代码:400Server响应时间:584.15 msRequest URL base:/ core / connect / token