TokenService
JWT token generation and validation service.
public static class TokenService
Methods
ExtractBearerToken(string?)
public static string? ExtractBearerToken(string? authHeader)
Extracts the token from a Bearer authorization header.
Parameters:
| Name | Type | Description |
|---|---|---|
authHeader |
String |
Returns: String
CreateToken(string, string?, string?, IReadOnlyList<string>, byte[], TimeSpan)
public static string CreateToken(string userId, string? displayName, string? email, IReadOnlyList<string> roles, byte[] signingKey, TimeSpan lifetime)
Creates a JWT token for the given user.
Parameters:
| Name | Type | Description |
|---|---|---|
userId |
String |
|
displayName |
String |
|
email |
String |
|
roles |
String> |
|
signingKey |
Byte[] |
|
lifetime |
TimeSpan |
Returns: String
ValidateTokenAsync(SqliteConnection, string, byte[], bool, ILogger?)
public static Task<object> ValidateTokenAsync(SqliteConnection conn, string token, byte[] signingKey, bool checkRevocation, ILogger? logger = null)
Validates a JWT token.
Parameters:
| Name | Type | Description |
|---|---|---|
conn |
SqliteConnection |
|
token |
String |
|
signingKey |
Byte[] |
|
checkRevocation |
Boolean |
|
logger |
ILogger |
Returns: Object>
RevokeTokenAsync(SqliteConnection, string)
public static Task RevokeTokenAsync(SqliteConnection conn, string jti)
Revokes a token by JTI using DataProvider generated method.
Parameters:
| Name | Type | Description |
|---|---|---|
conn |
SqliteConnection |
|
jti |
String |
Returns: Task