serverauth

package
v0.31.36 Latest Latest
Warning

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

Go to latest
Published: Apr 30, 2026 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ModeOff              = "off"
	ModeExternalRequired = "external-required"
	ModeRequired         = "required"

	DefaultWorkspaceHeader = "Tars-Workspace-Id"
)
View Source
const (
	RoleUser  = "user"
	RoleAdmin = "admin"
)

Variables

This section is empty.

Functions

func NewMiddleware

func NewMiddleware(opts Options, logOut io.Writer) func(http.Handler) http.Handler

func NormalizeMode

func NormalizeMode(raw string) string

func RoleFromContext

func RoleFromContext(ctx context.Context) string

func RoleFromRequest

func RoleFromRequest(r *http.Request) string

func WithWorkspaceID

func WithWorkspaceID(ctx context.Context, workspaceID string) context.Context

func WorkspaceIDFromContext

func WorkspaceIDFromContext(ctx context.Context) string

func WorkspaceIDFromRequest

func WorkspaceIDFromRequest(r *http.Request) string

Types

type Options

type Options struct {
	Mode                          string
	BearerToken                   string
	UserToken                     string
	AdminToken                    string
	WorkspaceHeader               string
	RequireWorkspaceForAuthorized bool
	UserWorkspaceAllowlist        []string
	AdminWorkspaceAllowlist       []string
	SkipPaths                     []string
	LoopbackSkipPaths             []string
	AdminPaths                    []string
}

Jump to

Keyboard shortcuts

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