Azure AD-> Cognito->打开ID连接-> Cookie会话

时间:2020-02-25 14:45:30

标签: asp.net-core amazon-cognito openid-connect

我正在使用带有OpenIdConnect / Cognito的.Net Core 3.1。我们将Azure AD联合SAML使用到Cognito。一切正常,我的用户进行身份验证并生成了一个会话cookie。但是,问题是这样的。我转到Cognito并“禁用”我的用户。但是,由于已通过身份验证的cookie是会话,因此用户仍然可以正常身份验证。我必须完全关闭浏览器,然后为我的.Net Core应用程序重新打开,以确认用户在Cognito中被禁用。这是正确的实现还是我做错了什么?是由于在后台登录到Azure并保持该登录会话处于活动状态吗?我只是对它们的工作方式感到困惑。

一些示例代码:

 services.AddAuthentication(options =>
        {
            options.DefaultScheme = CookieAuthenticationDefaults.AuthenticationScheme;
            options.DefaultChallengeScheme = OpenIdConnectDefaults.AuthenticationScheme;
        })
         .AddCookie()
         .AddOpenIdConnect(options =>
           {
               options.ResponseType = OpenIdConnectResponseType.Code;

               string authorityURL = $"https://cognito-idp.{AWSSecret.Instance.Region}.amazonaws.com/{AWSSecret.Instance.UserPoolId}/.well-known/openid-configuration";
               options.Authority = authorityURL;
               options.MetadataAddress = authorityURL;
               options.ClientId = AWSSecret.Instance.UserPoolClientId;
               options.ClientSecret = AWSSecret.Instance.UserPoolClientSecret;
               options.UsePkce = true;
               options.GetClaimsFromUserInfoEndpoint = true;
           });

0 个答案:

没有答案