graydart.tools.JWT-Token-Provider
1.0.0
dotnet add package graydart.tools.JWT-Token-Provider --version 1.0.0
NuGet\Install-Package graydart.tools.JWT-Token-Provider -Version 1.0.0
<PackageReference Include="graydart.tools.JWT-Token-Provider" Version="1.0.0" />
<PackageVersion Include="graydart.tools.JWT-Token-Provider" Version="1.0.0" />
<PackageReference Include="graydart.tools.JWT-Token-Provider" />
paket add graydart.tools.JWT-Token-Provider --version 1.0.0
#r "nuget: graydart.tools.JWT-Token-Provider, 1.0.0"
#:package graydart.tools.JWT-Token-Provider@1.0.0
#addin nuget:?package=graydart.tools.JWT-Token-Provider&version=1.0.0
#tool nuget:?package=graydart.tools.JWT-Token-Provider&version=1.0.0
JWT token provider (simple and higly secured token generator)
Overview
The JWT provider configuration entry enables you to define JWTs as part of a JSON Web Key Set (JWKS), which contains the information necessary for Consul to validate access and configure behavior for requests that include JWTs
dotnet add package graydart.tools.JWT-Token-Provider --version 1.0.0
Include
using JWT_TokenProvider;
// Declare object
var tknProvider=new TokenProvider("Your-APP-Name","You-APP-Audience","secret key");
// Program.CS
#region JWT Token Provider integration
builder.Services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
.AddJwtBearer(options =>
{
options.RequireHttpsMetadata = false;
options.TokenValidationParameters = tknProvider.GetValidationParameters();
});
// This is for the [Authorize] attributes.
builder.Services.AddAuthorization(auth =>
{
auth.DefaultPolicy = new AuthorizationPolicyBuilder()
.AddAuthenticationSchemes(JwtBearerDefaults.AuthenticationScheme)
.RequireAuthenticatedUser()
.Build();
});
#endregion
Token Generated (Call this method after Login success to get token)
//GetToken
JWTToken token=tknProvider.GetToken([new(ClaimTypes.NameIdentifier, "MYID123456")], new() { { "Sub-Role", "Client" } }, 120);
//Get Refresh Token
JWTToken refreshToken=tknProvider.RefreshToken(token,120);
// Add Authorization Attribute on the controller / API
[Authorize]
or
[Authorize(Roles="admin,user")] // if you mentioned Claims roles 'new List<Claims>{ new (ClaimTypes.Role,"admin")'
Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.
License
This library is licensed under the MIT License. See the LICENSE file for more details.
Contributions
Contributions to this library are welcome. Please open an issue or submit a pull request with your changes
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net9.0 is compatible. 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. |
-
net9.0
- Microsoft.IdentityModel.Tokens (>= 8.3.1)
- System.IdentityModel.Tokens.Jwt (>= 8.3.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last Updated |
---|---|---|
1.0.0 | 125 | 1/20/2025 |