validation

package
v1.10.3 Latest Latest
Warning

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

Go to latest
Published: Oct 14, 2025 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func FilterInvalidTuples

func FilterInvalidTuples(typesys *typesystem.TypeSystem) storage.TupleKeyFilterFunc

FilterInvalidTuples filters out tuples that aren't valid according to the provided model.

func ValidateObject

func ValidateObject(typesys *typesystem.TypeSystem, tk *openfgav1.TupleKey) error

ValidateObject validates the provided object string 'type:id' against the provided model. An object is considered valid if it validates against one of the type definitions included in the provided model.

func ValidateRelation

func ValidateRelation(typesys *typesystem.TypeSystem, tk *openfgav1.TupleKey) error

ValidateRelation validates the relation on the provided objectType against the given model. A relation is valid if it is defined as a relation for the type definition of the given objectType.

func ValidateTupleForRead added in v1.6.2

func ValidateTupleForRead(typesys *typesystem.TypeSystem, tk *openfgav1.TupleKey) error

ValidateTupleForRead returns nil if a tuple is valid according to the provided model. It also validates TTU relations and type restrictions.

func ValidateTupleForWrite added in v1.6.2

func ValidateTupleForWrite(typesys *typesystem.TypeSystem, tk *openfgav1.TupleKey) error

ValidateTupleForWrite returns nil if a tuple is well formed and valid according to the provided model. It is a superset of ValidateUserObjectRelation and ValidateTupleForRead; ONLY meant to be used in Write and contextual tuples (since these mimic being written in the datastore).

func ValidateUser

func ValidateUser(typesys *typesystem.TypeSystem, user string) error

ValidateUser validates the 'user' string provided by validating that it meets the model constraints. For 1.0 and 1.1 models if the user field is a userset value, then the objectType and relation must be defined. For 1.1 models the user field must either be a userset or an object, and if it's an object we verify the objectType is defined in the model.

func ValidateUserObjectRelation added in v0.3.1

func ValidateUserObjectRelation(typesys *typesystem.TypeSystem, tk *openfgav1.TupleKey) error

ValidateUserObjectRelation returns nil if the tuple is well-formed and valid according to the provided model.

Types

This section is empty.

Jump to

Keyboard shortcuts

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