package auth

import "github.com/google/martian/v3/auth"

Package auth provides filtering support for a martian.Proxy based on auth ID.

Index

Types

type Context

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

Context contains authentication information.

func FromContext

func FromContext(ctx *martian.Context) *Context

FromContext retrieves the auth.Context from the session.

func (*Context) Error

func (ctx *Context) Error() error

Error returns the error.

func (*Context) ID

func (ctx *Context) ID() string

ID returns the ID.

func (*Context) SetError

func (ctx *Context) SetError(err error)

SetError sets the error and resets the ID.

func (*Context) SetID

func (ctx *Context) SetID(id string)

SetID sets the ID.

type Filter

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

Filter filters RequestModifiers and ResponseModifiers by auth ID.

func NewFilter

func NewFilter() *Filter

NewFilter returns a new auth.Filter.

func (*Filter) ModifyRequest

func (f *Filter) ModifyRequest(req *http.Request) error

ModifyRequest runs the RequestModifier for the associated auth ID. If no modifier is found for auth ID then auth error is set.

func (*Filter) ModifyResponse

func (f *Filter) ModifyResponse(res *http.Response) error

ModifyResponse runs the ResponseModifier for the associated auth ID. If no modifier is found for the auth ID then the auth error is set.

func (*Filter) RequestModifier

func (f *Filter) RequestModifier(id string) martian.RequestModifier

RequestModifier retrieves the RequestModifier for the given ID. Returns nil if no modifier exists for the given ID.

func (*Filter) ResponseModifier

func (f *Filter) ResponseModifier(id string) martian.ResponseModifier

ResponseModifier retrieves the ResponseModifier for the given ID. Returns nil if no modifier exists for the given ID.

func (*Filter) SetAuthRequired

func (f *Filter) SetAuthRequired(required bool)

SetAuthRequired determines whether the auth ID must have an associated RequestModifier or ResponseModifier. If true, it will set auth error.

func (*Filter) SetRequestModifier

func (f *Filter) SetRequestModifier(id string, reqmod martian.RequestModifier) error

SetRequestModifier sets the RequestModifier for the given ID. It will overwrite any existing modifier with the same ID.

func (*Filter) SetResponseModifier

func (f *Filter) SetResponseModifier(id string, resmod martian.ResponseModifier) error

SetResponseModifier sets the ResponseModifier for the given ID. It will overwrite any existing modifier with the same ID.

Source Files

auth_filter.go context.go

Version
v3.3.2
Published
Mar 14, 2022
Platform
windows/amd64
Imports
4 packages
Last checked
1 hour ago

Tools for package owners.