openapi

package
v0.2.45 Latest Latest
Warning

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

Go to latest
Published: Nov 27, 2024 License: Apache-2.0 Imports: 13 Imported by: 4

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Middleware

func Middleware(authorizer Authorizer, openapi *openapi.Schema) func(http.Handler) http.Handler

Middleware returns a function that generates per-request middleware functions.

Types

type Authorizer

type Authorizer interface {
	// Authorize checks the request against the OpenAPI security scheme
	// and returns the access token.
	Authorize(authentication *openapi3filter.AuthenticationInput) (string, *openapi.Userinfo, error)

	// GetACL retrieves access control information from the subject identified
	// by the Authorize call.
	GetACL(ctx context.Context, organizationID, subject string) (*openapi.Acl, error)
}

Authorizer allows authorizers to be plugged in interchangeably.

type Validator

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

Validator provides Schema validation of request and response codes, media, and schema validation of payloads to ensure we are meeting the specification.

func NewValidator

func NewValidator(authorizer Authorizer, next http.Handler, openapi *openapi.Schema) *Validator

NewValidator returns an initialized validator middleware.

func (*Validator) ServeHTTP

func (v *Validator) ServeHTTP(w http.ResponseWriter, r *http.Request)

ServeHTTP implements the http.Handler interface.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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