Azure广告登录问题,我们无法登录您的网站

问题描述 投票:0回答:1

我有一个问题在azure广告认证,当我建立应用程序使用visual studio 2017集成与azure广告和部署在azure。

问题是当使用我们的azure广告登录用户名和密码后,他们发送令牌我们的手机,当我们进入该toke一些我的applixation是工作,一些时间错误,我们不能签署你再试,你能告诉我问题.这个问题是来的时间。

当我重建项目并再次部署,它是工作接下来与两个小时相同的错误是来了,我无法找到解决方案,为什么这个错误发生,可以请帮助我。

c# visual-studio-2017 azure-active-directory azure-web-sites
1个回答
0
投票

这个问题已经在ASP.NET核心和新版本的Katana Owin for ASP.NET中得到解决。要解决这个问题,您可以升级您的应用程序使用ASP.NET核心。如果您必须继续留在ASP.NET上,请执行以下操作。

更新您的应用程序的 Microsoft.Owin.Host.SystemWeb 包中至少有一个版本,然后修改你的代码,使用新的cookie管理器类,比如下面这样。

app.UseCookieAuthentication(new CookieAuthenticationOptions 
{ 
    AuthenticationType = "Cookies", 
    CookieManager = new Microsoft.Owin.Host.SystemWeb.SystemWebChunkingCookieManager() 
});

我们如何在mvc启动类中检查token的过期情况?

你可以用 Properties.ExpiresUtc 来获取访问令牌的到期时间。

options.Events = new OpenIdConnectEvents
{
    OnTokenValidated = x =>
    {
        x.Properties.IsPersistent = true;
        var accessToken = new JwtSecurityToken(x.TokenEndpointResponse.AccessToken);
        x.Properties.ExpiresUtc = accessToken.ValidTo;
        return Task.CompletedTask;
    }
};

你也可以沉默地更新 access_token 通过 refresh_token 在asp.net core mvc中,参考这个SO .

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.