JWT e reivindicações principais do ASP.NET

Tenho uma pergunta sobre a autenticação JWT no ASP.NET Core and Claims, porque não sei se entendi tudo corretamente.

Quando crio um token JWT no ASP.NET, adiciono algumas declarações, algumas das quais podem ser personalizadas. O que acontece quando a solicitação com o token JWT é enviada do cliente para a API. Como o User.Claims é preenchido? Ele usa as reivindicações lidas da JWT?

Gostaria de criar um provedor de identidade personalizado (não quero usar isso fornecido pelo ASP.NET), com minhas próprias tabelas para dados do usuário, funções etc. Não quero armazenar todos os dados importantes necessários para cumprir a política em Token JWT (a quantidade de informações armazenadas em assuntos de token, além de questões de segurança). É possível armazenar apenas declarações básicas (como ID do usuário, nome etc.) no token JWT e buscar novamente outros bancos de dados / cache de dados necessários? Junto com isso, eu gostaria de usar o mecanismo padrão para [Autorizar] e o mecanismo de políticas.

Como fazer isso funcionar: Identidade do usuário personalizada + JWT + Autorização padrão da política ASP.NET padrão + declarações obtidas do DB / Cache em todas as solicitações? Como conseguir isso?

questionAnswers(2)

yourAnswerToTheQuestion