Documentation
¶
Index ¶
- Constants
- Variables
- type Claims
- type Manager
- func (m *Manager) Generate2FAToken(userID uuid.UUID) (string, error)
- func (m *Manager) GenerateAccessToken(userID uuid.UUID) (string, error)
- func (m *Manager) GenerateRefreshToken(userID uuid.UUID) (string, error)
- func (m *Manager) GetRefreshTokenExpiry() time.Duration
- func (m *Manager) Validate2FAToken(tokenString string) (*Claims, error)
- func (m *Manager) ValidateAccessToken(tokenString string) (*Claims, error)
- func (m *Manager) ValidateRefreshToken(tokenString string) (*Claims, error)
Constants ¶
View Source
const ( TokenTypeAccess = "access" TokenTypeRefresh = "refresh" TokenType2FA = "2fa" )
Token types, embedded as a claim and verified on validation.
Variables ¶
View Source
var ( ErrInvalidToken = errors.New("invalid token") ErrExpiredToken = errors.New("token has expired") )
Functions ¶
This section is empty.
Types ¶
type Claims ¶
type Claims struct {
UserID uuid.UUID `json:"user_id"`
TokenType string `json:"token_type,omitempty"`
jwt.RegisteredClaims
}
type Manager ¶
type Manager struct {
// contains filtered or unexported fields
}
func NewManager ¶
func (*Manager) Generate2FAToken ¶
Generate2FAToken creates a short-lived token for 2FA challenge (5 minutes)
func (*Manager) GenerateAccessToken ¶
GenerateAccessToken creates a new JWT access token
func (*Manager) GenerateRefreshToken ¶
GenerateRefreshToken creates a new JWT refresh token
func (*Manager) GetRefreshTokenExpiry ¶
func (*Manager) Validate2FAToken ¶
Validate2FAToken validates a 2FA challenge token
func (*Manager) ValidateAccessToken ¶
ValidateAccessToken validates and parses an access token. 2FA challenge tokens are rejected.
Click to show internal directories.
Click to hide internal directories.