Open Closed

If my token expired, doesn't redirect to login. #3957


User avatar
0
Carolina.patino created
  • ABP Framework version: v6.0.0
  • UI type: Blazor Server
  • DB provider: EF Core / MongoDB
  • Tiered (MVC) or Identity Server Separated (Angular): yes
  • Exception message and stack trace:

2022-10-28 09:12:15.721 -04:00 [INF] Failed to validate the token. Microsoft.IdentityModel.Tokens.SecurityTokenExpiredException: IDX10223: Lifetime validation failed. The token is expired. ValidTo: '10/28/2022 13:03:45', Current time: '10/28/2022 13:12:15'. at Microsoft.IdentityModel.Tokens.Validators.ValidateLifetime(Nullable1 notBefore, Nullable1 expires, SecurityToken securityToken, TokenValidationParameters validationParameters) at System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.ValidateTokenPayload(JwtSecurityToken jwtToken, TokenValidationParameters validationParameters) at System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.ValidateToken(String token, TokenValidationParameters validationParameters, SecurityToken& validatedToken) at Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler.HandleAuthenticateAsync() When I Use my app for a time, it brake up. When i review the backend's log i faund this exception message.

If the token expired, my app broke up instead redirect to login view.

Should I configure something else in my application to get this redirect behavior .


6 Answer(s)
  • User Avatar
    0
    maliming created
    Support Team Fullstack Developer

    Will refreshing the page work?

  • User Avatar
    0
    Carolina.patino created

    No, when i refresh the page, my menu items desseapear, and i have to wait few minutes to view it again

  • User Avatar
    0
    maliming created
    Support Team Fullstack Developer

    Thanks, I will try to reproduce the issue.

  • User Avatar
    0
    brad created

    ABP Framework version: v6.0.0

    UI type: Blazor Server

    DB provider: EF Core /SqlServer

    Tiered (MVC) or OpenIDDict : yes

    Exception message and stack trace:

    Failed to validate the token. Microsoft.IdentityModel.Tokens.SecurityTokenExpiredException: IDX10223: Lifetime validation failed. The token is expired. ValidTo: 'System.DateTime', Current time: 'System.DateTime'. at Microsoft.IdentityModel.Tokens.Validators.ValidateLifetime(Nullable1 notBefore, Nullable1 expires, SecurityToken securityToken, TokenValidationParameters validationParameters) at System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.ValidateLifetime(Nullable1 notBefore, Nullable1 expires, JwtSecurityToken jwtToken, TokenValidationParameters validationParameters) at System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.ValidateTokenPayload(JwtSecurityToken jwtToken, TokenValidationParameters validationParameters) at System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.ValidateToken(String token, TokenValidationParameters validationParameters, SecurityToken& validatedToken) at Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler.HandleAuthenticateAsync() 2022-10-31 17:08:12.592 +08:00 [INF] Bearer was not authenticated. Failure message: IDX10223: Lifetime validation failed. The token is expired. ValidTo: 'System.DateTime', Current time: 'System.DateTime'. 2022-10-31 17:08:12.755 +08:00 [INF] Executing endpoint 'Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.AbpApplicationConfigurationController.GetAsync (Volo.Abp.AspNetCore.Mvc)' 2022-10-31 17:08:12.788 +08:00 [INF] Route matched with {area = "abp", action = "Get", controller = "AbpApplicationConfiguration", page = ""}. Executing controller action with signature System.Threading.Tasks.Task`1[Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.ApplicationConfigurationDto] GetAsync() on controller Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.AbpApplicationConfigurationController (Volo.Abp.AspNetCore.Mvc). 2022-10-31 17:08:12.859 +08:00 [WRN] The cookie 'XSRF-TOKEN' has set 'SameSite=None' and must also set 'Secure'. 2022-10-31 17:08:14.461 +08:00 [INF] Executing ObjectResult, writing value of type 'Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.ApplicationConfigurationDto'. 2022-10-31 17:08:14.523 +08:00 [INF] Executed action Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.AbpApplicationConfigurationController.GetAsync (Volo.Abp.AspNetCore.Mvc) in 1727.5795ms 2022-10-31 17:08:14.524 +08:00 [INF] Executed endpoint 'Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations.AbpApplicationConfigurationController.GetAsync (Volo.Abp.AspNetCore.Mvc)' 2022-10-31 17:08:14.562 +08:00 [INF] Request finished HTTP/1.1 GET http://172.16.10.210:44367/api/abp/application-configuration?api-version=1.0 - 0 - 200 - application/json;+charset=utf-8 9070.7801ms

    We got a similar problem,refresh does`nt work.

  • User Avatar
    0
    serdar.genc@talentra.net created

    Same problem. We need to solution, urgent.thanks

  • User Avatar
    0
    maliming created
    Support Team Fullstack Developer

    hi

    You can try redirecting to the Login page in this method.

    https://github.com/abpframework/abp/blob/dev/framework/src/Volo.Abp.AspNetCore.Components.Web/Volo/Abp/AspNetCore/Components/Web/ExceptionHandling/UserExceptionInformer.cs#L34

    https://support.abp.io/QA/Questions/2415/Overriding-Default-Error-Handling-Message-In-Blazor-App#answer-faa51288-59e4-197b-6308-3a0163288866

Made with ❤️ on ABP v9.1.0-preview. Updated on November 11, 2024, 11:11