TokenService

Classes > Gatekeeper.Api > 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