ds

package
v0.32.0 Latest Latest
Warning

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

Go to latest
Published: Apr 24, 2024 License: Apache-2.0 Imports: 22 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func BufToProto added in v0.0.7

func BufToProto(r io.Reader, msg proto.Message) error

BufToProto, unmarshal buffer to proto message instance.

func ProtoToBuf added in v0.0.7

func ProtoToBuf(w io.Writer, msg proto.Message) error

ProtoToBuf, marshal proto message to buffer.

func ProtoToInterface added in v0.30.0

func ProtoToInterface(msg proto.Message) (interface{}, error)

func RegisterCheck added in v0.30.0

func RegisterCheck(logger *zerolog.Logger, fnName string, dr resolvers.DirectoryResolver) (*rego.Function, rego.Builtin1)

RegisterCheck - ds.check

v3 (latest) request format:

ds.check({
  "object_type": "",
  "object_id": "",
  "relation": "",
  "subject_type": ""
  "subject_id": "",
  "trace": false
})

func RegisterCheckPermission

func RegisterCheckPermission(logger *zerolog.Logger, fnName string, dr resolvers.DirectoryResolver) (*rego.Function, rego.Builtin1)

RegisterCheckPermission - ds.check_permission

v3 (latest) request format:

ds.check_permission: {
	"object_id": "",
	"object_type": "",
	"permission": "",
	"subject_id": "",
	"subject_type": "",
	"trace": false
  }

v2 request format:

ds.check_permission({
	"object": {
	  "type": ""
	  "key": "",
	},
	"permission": {
	  "name": ""
	},
	"subject": {
	  "type": ""
	  "key": "",
	}
})

func RegisterCheckRelation

func RegisterCheckRelation(logger *zerolog.Logger, fnName string, dr resolvers.DirectoryResolver) (*rego.Function, rego.Builtin1)

RegisterCheckRelation - ds.check_relation

v3 (latest) request format:

ds.check_relation: {
	"object_id": "",
	"object_type": "",
	"relation": "",
	"subject_id": "",
	"subject_type": "",
	"trace": false
  }

v2 request format:

ds.check_relation({
  "object": {
    "type": ""
    "key": "",
  },
  "relation": {
    "name": "",
  },
  "subject": {
    "type": ""
    "key": "",
  }
})

func RegisterGraph

func RegisterGraph(logger *zerolog.Logger, fnName string, dr resolvers.DirectoryResolver) (*rego.Function, rego.Builtin1)

RegisterGraph - ds.graph

v3 (latest) request format:

ds.graph({
    "object_type": "",
    "object_id": "",
    "relation": "",
    "subject_type": "",
    "subject_id": "",
    "subject_relation": "",
    "explain": false,
    "trace": false
}

v2 request format:

ds.graph({
	"anchor": {
	  "type": ""
	  "key": "",
	},
	"object": {
	  "type": ""
	  "key": "",
	},
	"relation": {
	  "name": "",
	},
	"subject": {
	  "type": ""
	  "key": "",
	}
})

func RegisterIdentity

func RegisterIdentity(logger *zerolog.Logger, fnName string, dr resolvers.DirectoryResolver) (*rego.Function, rego.Builtin1)

RegisterIdentity - ds.identity - get user id (key) for identity

v3 (latest) request format:

ds.identity({
	"id": ""
})

v2 request format:

ds.identity({
	"key": ""
})

func RegisterObject

func RegisterObject(logger *zerolog.Logger, fnName string, dr resolvers.DirectoryResolver) (*rego.Function, rego.Builtin1)

RegisterObject - ds.object

v3 (latest) request format:

ds.object({
	"object_type": "",
	"object_id": "",
	"with_relation": false
})

v2 request format:

ds.object({
	"type": "",
	"key": ""
})

func RegisterRelation

func RegisterRelation(logger *zerolog.Logger, fnName string, dr resolvers.DirectoryResolver) (*rego.Function, rego.Builtin1)

func RegisterRelations added in v0.25.14

func RegisterRelations(logger *zerolog.Logger, fnName string, dr resolvers.DirectoryResolver) (*rego.Function, rego.Builtin1)

RegisterRelations - ds.relations

v3 (latest) request format:

v2 request format:

ds.relations({
	"object": {
	  "type": ""
	  "key": "",
	},
	"relation": {
	  "name": "",
	},
	"subject": {
	  "type": ""
	  "key": "",
	}
  })

func RegisterUser

func RegisterUser(logger *zerolog.Logger, fnName string, dr resolvers.DirectoryResolver) (*rego.Function, rego.Builtin1)

RegisterUser - ds.user

v3 (latest) request format:

ds.user({
	"id": ""
})

v2 request format:

ds.user({
	"key": ""
})

Types

This section is empty.

Jump to

Keyboard shortcuts

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