簡體   English   中英

ASP.NET 核心 web api 編輯承載認證

[英]ASP.NET Core web api editing Bearer auth

我已經實現了承載身份驗證,但我想在其中進行一些自定義操作。 我需要驗證聲明 token_id 是否使用數據庫中的token_id簽出。 如果是,則請求應通過身份驗證,在另一種情況下,應發回 401 響應。

為了驗證不記名令牌,您可以自定義OnTokenValidated

services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
    .AddJwtBearer(options =>
    {
        options.Events = new JwtBearerEvents {
            OnTokenValidated = async context =>
            {                            
                var accessToken = context.SecurityToken as JwtSecurityToken;
                var dbContext = services.BuildServiceProvider().CreateScope().ServiceProvider.GetRequiredService<ApplicationDbContext>();
                var tags = await dbContext.Tags.ToListAsync();
                context.Fail("Token is invalid");
                return;
            }
        };
    });

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM