privacy

package
v0.2.0 Latest Latest
Warning

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

Go to latest
Published: Dec 7, 2023 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// Allow may be returned by rules to indicate that the policy
	// evaluation should terminate with allow decision.
	Allow = privacy.Allow

	// Deny may be returned by rules to indicate that the policy
	// evaluation should terminate with deny decision.
	Deny = privacy.Deny

	// Skip may be returned by rules to indicate that the policy
	// evaluation should continue to the next rule.
	Skip = privacy.Skip
)

Functions

func Allowf

func Allowf(format string, a ...any) error

Allowf returns a formatted wrapped Allow decision.

func DecisionContext

func DecisionContext(parent context.Context, decision error) context.Context

DecisionContext creates a new context from the given parent context with a policy decision attach to it.

func DecisionFromContext

func DecisionFromContext(ctx context.Context) (error, bool)

DecisionFromContext retrieves the policy decision from the context.

func Denyf

func Denyf(format string, a ...any) error

Denyf returns a formatted wrapped Deny decision.

func Skipf

func Skipf(format string, a ...any) error

Skipf returns a formatted wrapped Skip decision.

Types

type EntitlementMutationRuleFunc

type EntitlementMutationRuleFunc func(context.Context, *generated.EntitlementMutation) error

The EntitlementMutationRuleFunc type is an adapter to allow the use of ordinary functions as a mutation rule.

func (EntitlementMutationRuleFunc) EvalMutation

EvalMutation calls f(ctx, m).

type EntitlementQueryRuleFunc

type EntitlementQueryRuleFunc func(context.Context, *generated.EntitlementQuery) error

The EntitlementQueryRuleFunc type is an adapter to allow the use of ordinary functions as a query rule.

func (EntitlementQueryRuleFunc) EvalQuery

EvalQuery return f(ctx, q).

type Filter

type Filter interface {
	// Where applies a filter on the executed query/mutation.
	Where(entql.P)
}

Filter is the interface that wraps the Where function for filtering nodes in queries and mutations.

type FilterFunc

type FilterFunc func(context.Context, Filter) error

The FilterFunc type is an adapter that allows the use of ordinary functions as filters for query and mutation types.

func (FilterFunc) EvalMutation

func (f FilterFunc) EvalMutation(ctx context.Context, m generated.Mutation) error

EvalMutation calls f(ctx, q) if the mutation implements the Filter interface, otherwise it is denied.

func (FilterFunc) EvalQuery

func (f FilterFunc) EvalQuery(ctx context.Context, q generated.Query) error

EvalQuery calls f(ctx, q) if the query implements the Filter interface, otherwise it is denied.

type GroupMutationRuleFunc

type GroupMutationRuleFunc func(context.Context, *generated.GroupMutation) error

The GroupMutationRuleFunc type is an adapter to allow the use of ordinary functions as a mutation rule.

func (GroupMutationRuleFunc) EvalMutation

EvalMutation calls f(ctx, m).

type GroupQueryRuleFunc

type GroupQueryRuleFunc func(context.Context, *generated.GroupQuery) error

The GroupQueryRuleFunc type is an adapter to allow the use of ordinary functions as a query rule.

func (GroupQueryRuleFunc) EvalQuery

func (f GroupQueryRuleFunc) EvalQuery(ctx context.Context, q generated.Query) error

EvalQuery return f(ctx, q).

type GroupSettingMutationRuleFunc

type GroupSettingMutationRuleFunc func(context.Context, *generated.GroupSettingMutation) error

The GroupSettingMutationRuleFunc type is an adapter to allow the use of ordinary functions as a mutation rule.

func (GroupSettingMutationRuleFunc) EvalMutation

EvalMutation calls f(ctx, m).

type GroupSettingQueryRuleFunc

type GroupSettingQueryRuleFunc func(context.Context, *generated.GroupSettingQuery) error

The GroupSettingQueryRuleFunc type is an adapter to allow the use of ordinary functions as a query rule.

func (GroupSettingQueryRuleFunc) EvalQuery

EvalQuery return f(ctx, q).

type IntegrationMutationRuleFunc

type IntegrationMutationRuleFunc func(context.Context, *generated.IntegrationMutation) error

The IntegrationMutationRuleFunc type is an adapter to allow the use of ordinary functions as a mutation rule.

func (IntegrationMutationRuleFunc) EvalMutation

EvalMutation calls f(ctx, m).

type IntegrationQueryRuleFunc

type IntegrationQueryRuleFunc func(context.Context, *generated.IntegrationQuery) error

The IntegrationQueryRuleFunc type is an adapter to allow the use of ordinary functions as a query rule.

func (IntegrationQueryRuleFunc) EvalQuery

EvalQuery return f(ctx, q).

type MutationPolicy

type MutationPolicy = privacy.MutationPolicy

MutationPolicy combines multiple mutation rules into a single policy.

type MutationRule

type MutationRule = privacy.MutationRule

MutationRule defines the interface which decides whether a mutation is allowed and optionally modifies it.

func DenyMutationOperationRule

func DenyMutationOperationRule(op generated.Op) MutationRule

DenyMutationOperationRule returns a rule denying specified mutation operation.

func OnMutationOperation

func OnMutationOperation(rule MutationRule, op generated.Op) MutationRule

OnMutationOperation evaluates the given rule only on a given mutation operation.

type MutationRuleFunc

type MutationRuleFunc = privacy.MutationRuleFunc

MutationRuleFunc type is an adapter which allows the use of ordinary functions as mutation rules.

type OauthProviderMutationRuleFunc

type OauthProviderMutationRuleFunc func(context.Context, *generated.OauthProviderMutation) error

The OauthProviderMutationRuleFunc type is an adapter to allow the use of ordinary functions as a mutation rule.

func (OauthProviderMutationRuleFunc) EvalMutation

EvalMutation calls f(ctx, m).

type OauthProviderQueryRuleFunc

type OauthProviderQueryRuleFunc func(context.Context, *generated.OauthProviderQuery) error

The OauthProviderQueryRuleFunc type is an adapter to allow the use of ordinary functions as a query rule.

func (OauthProviderQueryRuleFunc) EvalQuery

EvalQuery return f(ctx, q).

type OrganizationMutationRuleFunc

type OrganizationMutationRuleFunc func(context.Context, *generated.OrganizationMutation) error

The OrganizationMutationRuleFunc type is an adapter to allow the use of ordinary functions as a mutation rule.

func (OrganizationMutationRuleFunc) EvalMutation

EvalMutation calls f(ctx, m).

type OrganizationQueryRuleFunc

type OrganizationQueryRuleFunc func(context.Context, *generated.OrganizationQuery) error

The OrganizationQueryRuleFunc type is an adapter to allow the use of ordinary functions as a query rule.

func (OrganizationQueryRuleFunc) EvalQuery

EvalQuery return f(ctx, q).

type OrganizationSettingMutationRuleFunc

type OrganizationSettingMutationRuleFunc func(context.Context, *generated.OrganizationSettingMutation) error

The OrganizationSettingMutationRuleFunc type is an adapter to allow the use of ordinary functions as a mutation rule.

func (OrganizationSettingMutationRuleFunc) EvalMutation

EvalMutation calls f(ctx, m).

type OrganizationSettingQueryRuleFunc

type OrganizationSettingQueryRuleFunc func(context.Context, *generated.OrganizationSettingQuery) error

The OrganizationSettingQueryRuleFunc type is an adapter to allow the use of ordinary functions as a query rule.

func (OrganizationSettingQueryRuleFunc) EvalQuery

EvalQuery return f(ctx, q).

type PersonalAccessTokenMutationRuleFunc

type PersonalAccessTokenMutationRuleFunc func(context.Context, *generated.PersonalAccessTokenMutation) error

The PersonalAccessTokenMutationRuleFunc type is an adapter to allow the use of ordinary functions as a mutation rule.

func (PersonalAccessTokenMutationRuleFunc) EvalMutation

EvalMutation calls f(ctx, m).

type PersonalAccessTokenQueryRuleFunc

type PersonalAccessTokenQueryRuleFunc func(context.Context, *generated.PersonalAccessTokenQuery) error

The PersonalAccessTokenQueryRuleFunc type is an adapter to allow the use of ordinary functions as a query rule.

func (PersonalAccessTokenQueryRuleFunc) EvalQuery

EvalQuery return f(ctx, q).

type Policy

type Policy = privacy.Policy

Policy groups query and mutation policies.

type QueryMutationRule

type QueryMutationRule = privacy.QueryMutationRule

QueryMutationRule is an interface which groups query and mutation rules.

func AlwaysAllowRule

func AlwaysAllowRule() QueryMutationRule

AlwaysAllowRule returns a rule that returns an allow decision.

func AlwaysDenyRule

func AlwaysDenyRule() QueryMutationRule

AlwaysDenyRule returns a rule that returns a deny decision.

func ContextQueryMutationRule

func ContextQueryMutationRule(eval func(context.Context) error) QueryMutationRule

ContextQueryMutationRule creates a query/mutation rule from a context eval func.

type QueryPolicy

type QueryPolicy = privacy.QueryPolicy

QueryPolicy combines multiple query rules into a single policy.

type QueryRule

type QueryRule = privacy.QueryRule

QueryRule defines the interface deciding whether a query is allowed and optionally modify it.

type QueryRuleFunc

type QueryRuleFunc func(context.Context, generated.Query) error

QueryRuleFunc type is an adapter to allow the use of ordinary functions as query rules.

func (QueryRuleFunc) EvalQuery

func (f QueryRuleFunc) EvalQuery(ctx context.Context, q generated.Query) error

Eval returns f(ctx, q).

type RefreshTokenMutationRuleFunc added in v0.1.1

type RefreshTokenMutationRuleFunc func(context.Context, *generated.RefreshTokenMutation) error

The RefreshTokenMutationRuleFunc type is an adapter to allow the use of ordinary functions as a mutation rule.

func (RefreshTokenMutationRuleFunc) EvalMutation added in v0.1.1

EvalMutation calls f(ctx, m).

type RefreshTokenQueryRuleFunc added in v0.1.1

type RefreshTokenQueryRuleFunc func(context.Context, *generated.RefreshTokenQuery) error

The RefreshTokenQueryRuleFunc type is an adapter to allow the use of ordinary functions as a query rule.

func (RefreshTokenQueryRuleFunc) EvalQuery added in v0.1.1

EvalQuery return f(ctx, q).

type SessionMutationRuleFunc

type SessionMutationRuleFunc func(context.Context, *generated.SessionMutation) error

The SessionMutationRuleFunc type is an adapter to allow the use of ordinary functions as a mutation rule.

func (SessionMutationRuleFunc) EvalMutation

EvalMutation calls f(ctx, m).

type SessionQueryRuleFunc

type SessionQueryRuleFunc func(context.Context, *generated.SessionQuery) error

The SessionQueryRuleFunc type is an adapter to allow the use of ordinary functions as a query rule.

func (SessionQueryRuleFunc) EvalQuery

EvalQuery return f(ctx, q).

type UserMutationRuleFunc

type UserMutationRuleFunc func(context.Context, *generated.UserMutation) error

The UserMutationRuleFunc type is an adapter to allow the use of ordinary functions as a mutation rule.

func (UserMutationRuleFunc) EvalMutation

EvalMutation calls f(ctx, m).

type UserQueryRuleFunc

type UserQueryRuleFunc func(context.Context, *generated.UserQuery) error

The UserQueryRuleFunc type is an adapter to allow the use of ordinary functions as a query rule.

func (UserQueryRuleFunc) EvalQuery

func (f UserQueryRuleFunc) EvalQuery(ctx context.Context, q generated.Query) error

EvalQuery return f(ctx, q).

type UserSettingMutationRuleFunc

type UserSettingMutationRuleFunc func(context.Context, *generated.UserSettingMutation) error

The UserSettingMutationRuleFunc type is an adapter to allow the use of ordinary functions as a mutation rule.

func (UserSettingMutationRuleFunc) EvalMutation

EvalMutation calls f(ctx, m).

type UserSettingQueryRuleFunc

type UserSettingQueryRuleFunc func(context.Context, *generated.UserSettingQuery) error

The UserSettingQueryRuleFunc type is an adapter to allow the use of ordinary functions as a query rule.

func (UserSettingQueryRuleFunc) EvalQuery

EvalQuery return f(ctx, q).

Jump to

Keyboard shortcuts

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