package authorizer

import "github.com/open-policy-agent/opa/server/authorizer"

Package authorizer provides authorization handlers to the server.

Deprecated: This package is intended for older projects transitioning from OPA v0.x and will remain for the lifetime of OPA v1.x, but its use is not recommended. For newer features and behaviours, such as defaulting to the Rego v1 syntax, use the corresponding components in the github.com/open-policy-agent/opa/v1 package instead. See https://www.openpolicyagent.org/docs/latest/v0-compatibility/ for more information.

Index

Functions

func Decision

func Decision(ref func() ast.Ref) func(*Basic)

Decision returns an argument that sets the path of the authorization decision to query.

func EnablePrintStatements

func EnablePrintStatements(yes bool) func(r *Basic)

EnablePrintStatements enables print() calls. If this option is not provided, print() calls will be erased from the policy. This option only applies to queries and policies that passed as raw strings, i.e., this function will not have any affect if the caller supplies the ast.Compiler instance.

func GetBodyOnContext

func GetBodyOnContext(ctx context.Context) (interface{}, bool)

GetBodyOnContext returns the parsed input from the request context if it exists. The authorizer saves the parsed input on the context when it runs.

func InterQueryCache

func InterQueryCache(interQueryCache cache.InterQueryCache) func(*Basic)

InterQueryCache enables the inter-query cache on the authorizer

func InterQueryValueCache

func InterQueryValueCache(interQueryValueCache cache.InterQueryValueCache) func(*Basic)

InterQueryValueCache enables the inter-query value cache on the authorizer

func NewBasic

func NewBasic(inner http.Handler, compiler func() *ast.Compiler, store storage.Store, opts ...func(*Basic)) http.Handler

NewBasic returns a new Basic object.

func PrintHook

func PrintHook(printHook print.Hook) func(*Basic)

PrintHook sets the object to use for handling print statement outputs.

func Runtime

func Runtime(term *ast.Term) func(*Basic)

Runtime returns an argument that sets the runtime on the authorizer.

func SetBodyOnContext

func SetBodyOnContext(ctx context.Context, x interface{}) context.Context

SetBodyOnContext adds the parsed input value to the context. This function is only exposed for test purposes.

Types

type Basic

type Basic = v1.Basic

Basic provides policy-based authorization over incoming requests.

Source Files

authorizer.go doc.go

Version
v1.4.2 (latest)
Published
May 2, 2025
Platform
linux/amd64
Imports
7 packages
Last checked
4 hours ago

Tools for package owners.