Xis.ValidaToken
1.0.1
dotnet add package Xis.ValidaToken --version 1.0.1
NuGet\Install-Package Xis.ValidaToken -Version 1.0.1
<PackageReference Include="Xis.ValidaToken" Version="1.0.1" />
paket add Xis.ValidaToken --version 1.0.1
#r "nuget: Xis.ValidaToken, 1.0.1"
// Install Xis.ValidaToken as a Cake Addin #addin nuget:?package=Xis.ValidaToken&version=1.0.1 // Install Xis.ValidaToken as a Cake Tool #tool nuget:?package=Xis.ValidaToken&version=1.0.1
TokenService
O TokenService � um servi�o respons�vel por gerar e validar tokens JWT (JSON Web Tokens) em aplicativos ASP.NET Core. Este servi�o pode ser facilmente integrado em aplicativos para fornecer autentica��o baseada em token.
Funcionalidades
- Gera��o de token JWT com informa��es personalizadas.
- Valida��o de token JWT.
- Gera��o de refresh token.
Configura��o
Antes de utilizar o TokenService, � necess�rio configurar algumas vari�veis no arquivo de configura��o appsettings.json
. Aqui est�o as vari�veis necess�rias e suas descri��es:
{ "Token": { "SecretKey": "Chave secreta utilizada para assinar o token JWT.", "Issuer": "Emissor do token JWT.", "Audience": "P�blico-alvo do token JWT.", "AccessTokenExpirationMinutes": "Tempo de expira��o do access token em minutos.", "RefreshTokenExpirationMinutes": "Tempo de expira��o do refresh token em minutos." } }
SecretKey
: Uma chave secreta usada para assinar o token JWT. Deve ser uma string complexa e segura.Issuer
: Emissor do token JWT. Pode ser o nome do aplicativo ou uma URL.Audience
: P�blico-alvo do token JWT. Pode ser o nome do servi�o ou uma URL.AccessTokenExpirationMinutes
: Tempo de expira��o do access token em minutos. Define por quanto tempo o token de acesso � v�lido.RefreshTokenExpirationMinutes
: Tempo de expira��o do refresh token em minutos. Define por quanto tempo o token de atualiza��o � v�lido.
Utiliza��o
- Instale o pacote NuGet
Microsoft.Extensions.DependencyInjection.Abstractions
em seu projeto ASP.NET Core, caso ainda n�o tenha sido instalado:
dotnet add package Microsoft.Extensions.DependencyInjection.Abstractions
Configure as vari�veis no arquivo
appsettings.json
do seu projeto conforme descrito acima.Registre o servi�o
TokenService
no cont�iner de inje��o de depend�ncia do ASP.NET Core. Isso pode ser feito no m�todoConfigureServices
da classeStartup.cs
:
public void ConfigureServices(IServiceCollection services) { // Outras configura��es...
// Configure as op��es do token
var tokenOptions = new TokenOptions
{
SecretKey = Configuration["Token:SecretKey"],
Issuer = Configuration["Token:Issuer"],
Audience = Configuration["Token:Audience"],
AccessTokenExpirationMinutes = Convert.ToInt32(Configuration["Token:AccessTokenExpirationMinutes"]),
RefreshTokenExpirationMinutes = Convert.ToInt32(Configuration["Token:RefreshTokenExpirationMinutes"])
};
services.AddSingleton(tokenOptions);
// Registre o servi�o de token com a interface
services.AddScoped<ITokenService, TokenService>();
// Outras configura��es...
}
- Agora voc� pode injetar o servi�o
ITokenService
em seus controladores ou servi�os e us�-lo para gerar e validar tokens JWT.
Contribui��o
Contribui��es s�o bem-vindas! Sinta-se � vontade para abrir um pull request ou relatar problemas.
Este arquivo README.md fornece uma vis�o geral do projeto TokenService, explica as vari�veis que precisam ser configuradas no arquivo appsettings.json e fornece instru��es b�sicas sobre como utilizar o servi�o.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net7.0 is compatible. 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. |
-
net7.0
- Microsoft.Extensions.Logging.Abstractions (>= 8.0.0)
- System.IdentityModel.Tokens.Jwt (>= 7.5.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.