v1.7.8-rc1 Latest Latest

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

Go to latest
Published: Dec 4, 2020 License: Apache-2.0 Imports: 19 Imported by: 118




This section is empty.


This section is empty.


func GetProjectManager

func GetProjectManager(req *http.Request) (promgr.ProjectManager, error)

GetProjectManager tries to get project manager from request and returns it

func GetSecurityContext

func GetSecurityContext(req *http.Request) (security.Context, error)

GetSecurityContext tries to get security context from request and returns it

func Init

func Init()

Init ReqCtxMofiers list

func MediaTypeFilter

func MediaTypeFilter(mediaType ...string) func(*beegoctx.Context)

MediaTypeFilter filters the POST request, it returns 415 if the content type of the request doesn't match the preset ones.

func ReadonlyFilter

func ReadonlyFilter(ctx *context.Context)

ReadonlyFilter filters the deletion or creation (e.g. retag) of repo/tag requests and returns 503.

func SecurityFilter

func SecurityFilter(ctx *beegoctx.Context)

SecurityFilter authenticates the request and passes a security context and a project manager with it which can be used to do some authN & authZ


type ContextValueKey

type ContextValueKey string

ContextValueKey for content value

const (
	// SecurCtxKey is context value key for security context
	SecurCtxKey ContextValueKey = "harbor_security_context"

	// PmKey is context value key for the project manager
	PmKey ContextValueKey = "harbor_project_manager"

type ReqCtxModifier

type ReqCtxModifier interface {
	Modify(*beegoctx.Context) bool

ReqCtxModifier modifies the context of request

Jump to

Keyboard shortcuts

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