auth

package
v0.0.39 Latest Latest
Warning

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

Go to latest
Published: Jul 5, 2025 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func HandleChangePassword

func HandleChangePassword(c *gin.Context)

TODO: ratelimit? POST /api/v1/auth/change-password change the password of current user

func HandleCliLogin

func HandleCliLogin(c *gin.Context)

TODO: replace with api keys

func HandleLogin

func HandleLogin(ctx *gin.Context)

Login godoc @Summary Login @Schemes @Description Login @Tags Templates @Accept json @Produce json @Param request body LoginRequestBody true "Credentials" @Success 200 {object} @Router /api/v1/auth/login [post]

func HandleLogout

func HandleLogout(ctx *gin.Context)

Logout godoc @Summary Logout @Schemes @Description Logout @Tags Templates @Accept json @Produce json @Success 200 {object} @Router /api/v1/auth/logout [post]

func HandleRetrieveInitialUserExists

func HandleRetrieveInitialUserExists(ctx *gin.Context)

TODO: ratelimit GET /api/v1/auth/initial-user-exists retrieve if at least one user exists for the current instance of codebox this api is used to redirect users to signup page to create the first user

func HandleRetrieveUserPublicKey

func HandleRetrieveUserPublicKey(ctx *gin.Context)

GET /api/v1/auth/user-ssh-public-key retrieve user's ssh public key

func HandleRetriveUserDetails

func HandleRetriveUserDetails(ctx *gin.Context)

GET /api/v1/auth/user-details retrieve details about the current user

func HandleSignup

func HandleSignup(ctx *gin.Context)

TODO: ratelimit Signup godoc @Summary Signup @Schemes @Description Signup @Tags Templates @Accept json @Produce json @Param request body SignupRequestBody true "Credentials" @Success 200 {object} @Router /api/v1/auth/signup [post]

func HandleSubdomainLoginAuthorize

func HandleSubdomainLoginAuthorize(ctx *gin.Context)

func HandleSubdomainLoginCallback

func HandleSubdomainLoginCallback(ctx *gin.Context)

func HandleUpdateUserDetails

func HandleUpdateUserDetails(ctx *gin.Context)

PUT or PATCH /api/v1/auth/user-details update user first and last name

func SetAuthCookie

func SetAuthCookie(ctx *gin.Context, token string, tokenDuration int) error

set authentication cookie

func SetSubdomainsAuthCookie

func SetSubdomainsAuthCookie(ctx *gin.Context, token string) error

set authentication cookie for subdomains Note: This cookie uses a different name compared to the main website's authorization cookie. This addresses a scenario where a subdomain (within the codebox server's wildcard domain) might attempt to set a cookie with the same name as the secure codebox server's authorization cookie, which browsers prevent.

Types

type LoginRequestBody added in v0.0.35

type LoginRequestBody struct {
	Email      string `json:"email" binding:"required"`
	Password   string `json:"password" binding:"required"`
	RememberMe bool   `json:"remember_me"`
}

type SignUpRequestBody added in v0.0.35

type SignUpRequestBody struct {
	Email     string `json:"email" binding:"required,email"`
	FirstName string `json:"first_name"  binding:"required"`
	LastName  string `json:"last_name"  binding:"required"`
	Password  string `json:"password"  binding:"required"`
}

Jump to

Keyboard shortcuts

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