authzguardsql

package
v0.10.0 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DefaultResourceBuilder

type DefaultResourceBuilder struct{}

DefaultResourceBuilder uses stable resource type names suitable for examples.

func (DefaultResourceBuilder) EntityResource

func (DefaultResourceBuilder) EntityResource(entity string) authz.Resource

EntityResource implements ResourceBuilder.

func (DefaultResourceBuilder) FieldResource

func (DefaultResourceBuilder) FieldResource(entity, field string) authz.Resource

FieldResource implements ResourceBuilder.

type PolicyBuilder

type PolicyBuilder struct {
	Authorizer      authz.Authorizer
	Principal       authz.Principal
	Schema          guardsql.Schema
	ResourceBuilder ResourceBuilder
	RequireLimit    bool
	MaxLimit        int
	MaxDepth        int
	MaxNodes        int
	MaxInValues     int
	AllowStar       bool
}

PolicyBuilder checks SystemForge authorization for schema entities/fields and compiles the result into a GuardSQL policy.

func (PolicyBuilder) Build

Build returns a read-only GuardSQL policy derived from SystemForge authz.

type ResourceBuilder

type ResourceBuilder interface {
	EntityResource(entity string) authz.Resource
	FieldResource(entity, field string) authz.Resource
}

ResourceBuilder maps GuardSQL entities and fields to SystemForge resources. Applications can use these names directly in SpiceDB schemas or adapt them to product-specific resource types.

type ResourceBuilderFunc

type ResourceBuilderFunc struct {
	Entity func(entity string) authz.Resource
	Field  func(entity, field string) authz.Resource
}

ResourceBuilderFunc adapts functions into a ResourceBuilder.

func (ResourceBuilderFunc) EntityResource

func (f ResourceBuilderFunc) EntityResource(entity string) authz.Resource

EntityResource implements ResourceBuilder.

func (ResourceBuilderFunc) FieldResource

func (f ResourceBuilderFunc) FieldResource(entity, field string) authz.Resource

FieldResource implements ResourceBuilder.

Jump to

Keyboard shortcuts

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