token

package
v1.0.0-rc1 Latest Latest
Warning

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

Go to latest
Published: Jun 19, 2026 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// TokensFieldName — имя поля для списка токенов.
	TokensFieldName = "server.http.auth.token.tokens"

	// HeaderNameFieldName — имя поля для названия заголовка.
	HeaderNameFieldName = "server.http.auth.token.header"

	// FilePathFieldName — имя поля для пути к файлу с токенами.
	FilePathFieldName = "server.http.auth.token.filepath"
)

Variables

View Source
var Component = compogo.Component{
	Init: compogo.StepFunc(func(container compogo.Container) error {
		return container.Provides(
			NewConfig,
			NewAuth,
		)
	}),
	Configuration: compogo.StepFunc(func(container compogo.Container) error {
		return container.Invoke(Configuration)
	}),
}

Component — компонент Token Auth для Compogo. Регистрирует конфигурацию и middleware в DI-контейнере.

View Source
var HeaderNameDefault = "X-Auth-Token"

HeaderNameDefault — имя заголовка по умолчанию (X-Auth-Token).

Functions

This section is empty.

Types

type Auth

type Auth struct {
	// contains filtered or unexported fields
}

Auth реализует Token-based Authentication middleware. Проверяет наличие токена в заголовке запроса.

func NewAuth

func NewAuth(config *Config) *Auth

NewAuth создаёт новый middleware для Token Auth.

func (*Auth) Middleware

func (auth *Auth) Middleware(next http.Handler) http.Handler

Middleware реализует интерфейс http_server.Middleware. Проверяет наличие токена в заголовке. В случае неудачи возвращает 401 Unauthorized.

type Config

type Config struct {
	HeaderName string
	FilePath   string

	Tokens set.Set[string]
	// contains filtered or unexported fields
}

Config содержит конфигурацию Token Auth.

func Configuration

func Configuration(config *Config, configurator compogo.Configurator) (*Config, error)

Configuration загружает конфигурацию из Configurator. Поддерживает загрузку токенов из:

  • Параметра tokens (срез строк)
  • Файла (построчное чтение, каждая строка = токен)

Пустые строки в файле игнорируются.

func NewConfig

func NewConfig() *Config

NewConfig создаёт новую конфигурацию.

Jump to

Keyboard shortcuts

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