Nuuvify.CommonPack.Security.JwtCredentials
2.5.0-test.26060606
See the version list below for details.
dotnet add package Nuuvify.CommonPack.Security.JwtCredentials --version 2.5.0-test.26060606
NuGet\Install-Package Nuuvify.CommonPack.Security.JwtCredentials -Version 2.5.0-test.26060606
<PackageReference Include="Nuuvify.CommonPack.Security.JwtCredentials" Version="2.5.0-test.26060606" />
<PackageVersion Include="Nuuvify.CommonPack.Security.JwtCredentials" Version="2.5.0-test.26060606" />
<PackageReference Include="Nuuvify.CommonPack.Security.JwtCredentials" />
paket add Nuuvify.CommonPack.Security.JwtCredentials --version 2.5.0-test.26060606
#r "nuget: Nuuvify.CommonPack.Security.JwtCredentials, 2.5.0-test.26060606"
#:package Nuuvify.CommonPack.Security.JwtCredentials@2.5.0-test.26060606
#addin nuget:?package=Nuuvify.CommonPack.Security.JwtCredentials&version=2.5.0-test.26060606&prerelease
#tool nuget:?package=Nuuvify.CommonPack.Security.JwtCredentials&version=2.5.0-test.26060606&prerelease
Nuuvify.CommonPack.Security.JwtCredentials
Pacote para gerenciamento de credenciais JWK/JWKS usadas na assinatura e distribuição de chaves para JWT.
Ele fornece o builder principal para registrar serviços de geração e armazenamento de chaves, além de opções para cache de tokens e persistência do conjunto de chaves.
O que o pacote oferece
- registro do builder via
AddJwksManager - configuração de opções em
JwksOptions - geração e gerenciamento de JWK/JWKS
- persistência de chaves em store em memória por padrão
- integração opcional com cache distribuído SQL Server para tokens
- suporte a múltiplos algoritmos de assinatura, incluindo HMAC, RSA, RSA-PSS e ECDSA
Quando usar
Use este pacote quando a aplicação emissora de tokens precisar:
- gerenciar chaves de assinatura como JWK/JWKS
- expor ou rotacionar chaves de forma controlada
- centralizar as opções de algoritmo e cache do conjunto de chaves
- integrar armazenamento de token com cache distribuído
Registro básico
O ponto de entrada principal é AddJwksManager.
using Nuuvify.CommonPack.Security.JwtCredentials;
builder.Services
.AddJwksManager(options =>
{
options.Algorithm = Algorithm.ES256;
options.AlgorithmsToKeep = 2;
options.CacheTime = TimeSpan.FromMinutes(15);
})
.PersistKeysInCache();
Esse fluxo registra serviços como IJwkService, IJwkSetService e um IJwkStore em memória.
JwksOptions
As opções públicas observáveis incluem:
Algorithm: algoritmo principal usado para geração/assinatura. O padrão éAlgorithm.ES256.AlgorithmsToKeep: quantidade de versões/chaves mantidas.CacheTime: tempo de cache do conjunto de chaves.
Algoritmos suportados
O pacote expõe algoritmos prontos por meio da classe Algorithm, incluindo combinações comuns como:
HS256,HS384,HS512RS256,RS384,RS512PS256,PS384,PS512ES256,ES384,ES512
Escolha o algoritmo conforme o tipo de chave e o contrato esperado pelos consumidores do token.
Cache de token com SQL Server
Para usar cache distribuído baseado em SQL Server, o builder expõe CacheTokenSetup.
builder.Services
.AddJwksManager()
.CacheTokenSetup(
connectionString: builder.Configuration.GetConnectionString("DefaultConnection"),
schemaName: "cache",
tableName: "Tokens");
Esse setup registra IJwtSetService e um IDistributedCache com chave nomeada SqlServerCache.
Estrutura esperada da tabela de cache
Quando usar a persistência em SQL Server, a tabela de tokens deve existir previamente no banco, no formato esperado pelo SqlServerCache.
Observações de uso
- este pacote é mais adequado para a aplicação que emite tokens ou gerencia chaves
- o store padrão é em memória; persistência mais robusta pode ser adicionada por pacote complementar
- mudanças em algoritmo, retenção de chaves e tempo de cache podem afetar compatibilidade operacional com consumidores
Pacotes relacionados
Nuuvify.CommonPack.Security: setup base de autenticação e autorizaçãoNuuvify.CommonPack.Security.JwtStore.Ef: persistência de chaves e cache de tokens com Entity Framework
Validação recomendada ao alterar este pacote
- algoritmo configurado corretamente
- geração e recuperação de JWK/JWKS
- retenção de chaves conforme
AlgorithmsToKeep - cache distribuído funcionando com a tabela esperada
- compatibilidade do conjunto de chaves com consumidores do token
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.1 is compatible. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.1
- Microsoft.Extensions.Caching.SqlServer (>= 8.0.11)
- Microsoft.Extensions.Options (>= 8.0.2)
- Microsoft.IdentityModel.Tokens (>= 8.2.1)
- Nuuvify.CommonPack.Security.Abstraction (>= 2.5.0-test.26060606)
- System.IdentityModel.Tokens.Jwt (>= 8.2.1)
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 3.0.0-test.25052502 | 0 | 5/25/2025 |
| 2.5.1-test.26061402 | 0 | 6/14/2026 |
| 2.5.0-test.26060608 | 0 | 6/6/2026 |
| 2.5.0-test.26060606 | 0 | 6/6/2026 |
| 2.4.0-test.26060602 | 0 | 6/6/2026 |
| 2.4.0-test.26041707 | 0 | 4/17/2026 |
| 2.3.0-test.26033106 | 0 | 3/31/2026 |
| 2.2.0-test.25102904 | 0 | 10/29/2025 |
| 2.2.0-test.25102902 | 0 | 10/29/2025 |
| 2.1.0-test.25101302 | 1 | 10/13/2025 |
| 2.1.0-test.25101102 | 0 | 10/12/2025 |
| 2.1.0-test.25100702 | 0 | 10/8/2025 |
| 2.1.0-test.25100602 | 0 | 10/6/2025 |
| 2.1.0-test.25100507 | 0 | 10/6/2025 |
| 2.1.0-test.25100503 | 0 | 10/5/2025 |
| 2.1.0-test.25093008 | 0 | 9/30/2025 |
# Changelog - Nuuvify.CommonPack.Security.JwtCredentials
Todas as mudanças notáveis deste pacote serão documentadas neste arquivo.
O formato é baseado em [Keep a Changelog](https://keepachangelog.com/pt-br/1.0.0/),
e este projeto adere ao [Semantic Versioning](https://semver.org/lang/pt-BR/spec/v2.0.0.html).
## [Não Lançado]
### Adicionado
### Alterado
### Corrigido
### Removido
### Segurança
## [Sem versão registrada] - 2026-05-29
### Adicionado
- Estrutura inicial do changelog padronizada para este pacote.