Documentation ¶
Overview ¶
Package rule contains policy rules
Index ¶
- func AllowAfterApplyingPrivacyTokenFilter(emptyToken token.PrivacyToken, ...) privacy.QueryMutationRule
- func AllowIfContextHasPrivacyTokenOfType(emptyToken token.PrivacyToken) privacy.QueryMutationRule
- func AllowIfSelf() privacy.QueryMutationRule
- func AllowMutationAfterApplyingOwnerFilter() privacy.MutationRule
- func AllowMutationIfContextHasValidEmailSignUpToken(getEmail MutationEmailGetter) privacy.MutationRule
- func CanCreateObjectsInOrg() privacy.MutationRuleFunc
- func CanInviteUsers() privacy.InviteMutationRuleFunc
- func ContextHasPrivacyTokenOfType(ctx context.Context, emptyToken token.PrivacyToken) bool
- func HasOrgMutationAccess() privacy.OrganizationMutationRuleFunc
- type MutationEmailGetter
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AllowAfterApplyingPrivacyTokenFilter ¶
func AllowAfterApplyingPrivacyTokenFilter( emptyToken token.PrivacyToken, applyFilter func(t token.PrivacyToken, filter privacy.Filter), ) privacy.QueryMutationRule
AllowAfterApplyingPrivacyTokenFilter allows the mutation to proceed if a privacy token of a specific type is found in the context. It also applies a privacy filter to the token before allowing the mutation to proceed
func AllowIfContextHasPrivacyTokenOfType ¶
func AllowIfContextHasPrivacyTokenOfType(emptyToken token.PrivacyToken) privacy.QueryMutationRule
AllowIfContextHasPrivacyTokenOfType allows a mutation to proceed if a privacy token of a specific type is found in the context. It checks if the actual type of the token in the context matches the expected type, and if so, it returns `privacy.Allow`. If the types do not match, it returns `privacy.Skipf` with a message indicating that no token was found in the context with the expected type
func AllowIfSelf ¶
func AllowIfSelf() privacy.QueryMutationRule
AllowIfSelf determines whether a query or mutation operation should be allowed based on whether the requested data is for the viewer
func AllowMutationAfterApplyingOwnerFilter ¶
func AllowMutationAfterApplyingOwnerFilter() privacy.MutationRule
AllowMutationAfterApplyingOwnerFilter defines a privacy rule for mutations in the context of an owner filter
func AllowMutationIfContextHasValidEmailSignUpToken ¶
func AllowMutationIfContextHasValidEmailSignUpToken(getEmail MutationEmailGetter) privacy.MutationRule
AllowMutationIfContextHasValidEmailSignUpToken is used to determine whether a mutation should be allowed or skipped based on the presence and validity of an email signup token in the context
func CanCreateObjectsInOrg ¶ added in v0.3.5
func CanCreateObjectsInOrg() privacy.MutationRuleFunc
CanCreateObjectsInOrg is a rule that returns allow decision if user has edit access in the organization which allows them to create organization owned objects This rule is used for objects that are owned by an organization but also offer their own permission sets (e.g. groups and programs)
func CanInviteUsers ¶
func CanInviteUsers() privacy.InviteMutationRuleFunc
CanInviteUsers is a rule that returns allow decision if user has access to invite members or admins to the organization
func ContextHasPrivacyTokenOfType ¶
func ContextHasPrivacyTokenOfType(ctx context.Context, emptyToken token.PrivacyToken) bool
ContextHasPrivacyTokenOfType checks the context for the token type and returns true if they match
func HasOrgMutationAccess ¶
func HasOrgMutationAccess() privacy.OrganizationMutationRuleFunc
HasOrgMutationAccess is a rule that returns allow decision if user has edit or delete access