auth

package
v1.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 10, 2026 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

View Source
const (
	INSERT_USER   string = "INSERT INTO users (user, password) VALUES (?, ?)"
	SELECT_USERID string = "SELECT id FROM users WHERE user = ?"
	SELECT_USER   string = "SELECT user, password FROM users WHERE user = ?"
)

Variables

View Source
var (
	ErrInternal error = errors.New("internal error")

	//JWT errors
	ErrJwtSignatureInvalid error = errors.New("wrong token signature")
	ErrWrongJWTName        error = errors.New("wrong username from jwt token")
	ErrBadClaims           error = errors.New("failed get claims from jwt token")

	// External errors
	ErrNameIsEmpty error = errors.New("username is empty")

	// - Login errors
	ErrUserNotExist  error = errors.New("wrong username or user not registered")
	ErrWrongPassword error = errors.New("wrong password")

	// - Register errors
	ErrUserAlreadyExists error = errors.New("user already registered")
)

Functions

func CheckJWTUserMatch

func CheckJWTUserMatch(username string, token string, signature string) error

func Login

func Login(user User, db *sql.DB, jwt_signature string) (string, error)

If user exist in database, return personal jwt token

func Register

func Register(user User, db *sql.DB) error

Crypt user password and put them to database

Types

type User

type User struct {
	Name     string `json:"user"`
	Password string `json:"pass"`
}

func NewUser

func NewUser(name string, password string) User

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL