v1alpha1

package
v1.4.1 Latest Latest
Warning

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

Go to latest
Published: Aug 17, 2023 License: Apache-2.0 Imports: 8 Imported by: 2

Documentation

Overview

Code generated by protoc-gen-deepcopy. DO NOT EDIT.

Code generated by protoc-gen-jsonshim. DO NOT EDIT.

Index

Constants

This section is empty.

Variables

View Source
var (
	DubboAuthorizationPolicy_Action_name = map[int32]string{
		0: "ALLOW",
		1: "DENY",
	}
	DubboAuthorizationPolicy_Action_value = map[string]int32{
		"ALLOW": 0,
		"DENY":  1,
	}
)

Enum value maps for DubboAuthorizationPolicy_Action.

View Source
var (
	DubboAuthorizationPolicyMarshaler   = &jsonpb.Marshaler{}
	DubboAuthorizationPolicyUnmarshaler = &jsonpb.Unmarshaler{AllowUnknownFields: true}
)
View Source
var File_dubbo_v1alpha1_dubbo_authorization_policy_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type DubboAuthorizationPolicy

type DubboAuthorizationPolicy struct {

	// Optional. A list of rules to match the request. A match occurs when at least
	// one rule matches the request.
	//
	// If not set, the match will never occur. This is equivalent to setting a
	// default of deny for the target workloads.
	Rules []*Rule `protobuf:"bytes,2,rep,name=rules,proto3" json:"rules,omitempty"`
	// Optional. The action to take if the request is matched with the rules.
	Action DubboAuthorizationPolicy_Action `` /* 128-byte string literal not displayed */
	// contains filtered or unexported fields
}

DubboAuthorizationPolicy enables access control on Dubbo services.

<!-- crd generation tags +cue-gen:DubboAuthorizationPolicy:groupName:dubbo.aeraki.io +cue-gen:DubboAuthorizationPolicy:version:v1alpha1 +cue-gen:DubboAuthorizationPolicy:storageVersion +cue-gen:DubboAuthorizationPolicy:annotations:helm.sh/resource-policy=keep +cue-gen:DubboAuthorizationPolicy:labels:app=aeraki,chart=aeraki,heritage=Tiller,release=aeraki +cue-gen:DubboAuthorizationPolicy:subresource:status +cue-gen:DubboAuthorizationPolicy:scope:Namespaced +cue-gen:DubboAuthorizationPolicy:resource:categories=aeraki-io,dubbo-aeraki-io,plural=dubboauthorizationpolicies,shortNames=dap +cue-gen:DubboAuthorizationPolicy:preserveUnknownFields:false -->

<!-- go code generation tags +kubetype-gen +kubetype-gen:groupVersion=dubbo.aeraki.io/v1alpha1 +genclient +k8s:deepcopy-gen=true -->

func (*DubboAuthorizationPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DubboAuthorizationPolicy. Required by controller-gen.

func (*DubboAuthorizationPolicy) DeepCopyInterface

func (in *DubboAuthorizationPolicy) DeepCopyInterface() interface{}

DeepCopyInterface is an autogenerated deepcopy function, copying the receiver, creating a new DubboAuthorizationPolicy. Required by controller-gen.

func (*DubboAuthorizationPolicy) DeepCopyInto

func (in *DubboAuthorizationPolicy) DeepCopyInto(out *DubboAuthorizationPolicy)

DeepCopyInto supports using DubboAuthorizationPolicy within kubernetes types, where deepcopy-gen is used.

func (*DubboAuthorizationPolicy) Descriptor deprecated

func (*DubboAuthorizationPolicy) Descriptor() ([]byte, []int)

Deprecated: Use DubboAuthorizationPolicy.ProtoReflect.Descriptor instead.

func (*DubboAuthorizationPolicy) GetAction

func (*DubboAuthorizationPolicy) GetRules

func (x *DubboAuthorizationPolicy) GetRules() []*Rule

func (*DubboAuthorizationPolicy) MarshalJSON

func (this *DubboAuthorizationPolicy) MarshalJSON() ([]byte, error)

MarshalJSON is a custom marshaler for DubboAuthorizationPolicy

func (*DubboAuthorizationPolicy) ProtoMessage

func (*DubboAuthorizationPolicy) ProtoMessage()

func (*DubboAuthorizationPolicy) ProtoReflect

func (x *DubboAuthorizationPolicy) ProtoReflect() protoreflect.Message

func (*DubboAuthorizationPolicy) Reset

func (x *DubboAuthorizationPolicy) Reset()

func (*DubboAuthorizationPolicy) String

func (x *DubboAuthorizationPolicy) String() string

func (*DubboAuthorizationPolicy) UnmarshalJSON

func (this *DubboAuthorizationPolicy) UnmarshalJSON(b []byte) error

UnmarshalJSON is a custom unmarshaler for DubboAuthorizationPolicy

type DubboAuthorizationPolicy_Action

type DubboAuthorizationPolicy_Action int32

Action specifies the operation to take.

const (
	// Allow a request only if it matches the rules. This is the default type.
	DubboAuthorizationPolicy_ALLOW DubboAuthorizationPolicy_Action = 0
	// Deny a request if it matches any of the rules.
	DubboAuthorizationPolicy_DENY DubboAuthorizationPolicy_Action = 1
)

func (DubboAuthorizationPolicy_Action) Descriptor

func (DubboAuthorizationPolicy_Action) Enum

func (DubboAuthorizationPolicy_Action) EnumDescriptor deprecated

func (DubboAuthorizationPolicy_Action) EnumDescriptor() ([]byte, []int)

Deprecated: Use DubboAuthorizationPolicy_Action.Descriptor instead.

func (DubboAuthorizationPolicy_Action) Number

func (DubboAuthorizationPolicy_Action) String

func (DubboAuthorizationPolicy_Action) Type

type Operation

type Operation struct {

	// Optional. A list of interfaces, which matches to the Dubbo interface.
	//
	// If not set, any interfaces is allowed.
	Interfaces []string `protobuf:"bytes,1,rep,name=interfaces,proto3" json:"interfaces,omitempty"`
	// Optional. A list of negative match of interfaces.
	NotInterfaces []string `protobuf:"bytes,5,rep,name=not_interfaces,json=notInterfaces,proto3" json:"not_interfaces,omitempty"`
	// Optional. A list of methods, which matches to the Dubbo methods.
	//
	// If not set, any method is allowed.
	Methods []string `protobuf:"bytes,3,rep,name=methods,proto3" json:"methods,omitempty"`
	// Optional. A list of negative match of methods.
	NotMethods []string `protobuf:"bytes,7,rep,name=not_methods,json=notMethods,proto3" json:"not_methods,omitempty"`
	// contains filtered or unexported fields
}

Operation specifies the operations of a request. Fields in the operation are ANDed together.

For example, the following operation matches if the Dubbo interface is "org.apache.dubbo.samples.basic.api.DemoService" and the method is "sayHello".

```yaml interfaces: ["org.apache.dubbo.samples.basic.api.DemoService"] methods: ["sayHello"] ```

func (*Operation) DeepCopy

func (in *Operation) DeepCopy() *Operation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Operation. Required by controller-gen.

func (*Operation) DeepCopyInterface

func (in *Operation) DeepCopyInterface() interface{}

DeepCopyInterface is an autogenerated deepcopy function, copying the receiver, creating a new Operation. Required by controller-gen.

func (*Operation) DeepCopyInto

func (in *Operation) DeepCopyInto(out *Operation)

DeepCopyInto supports using Operation within kubernetes types, where deepcopy-gen is used.

func (*Operation) Descriptor deprecated

func (*Operation) Descriptor() ([]byte, []int)

Deprecated: Use Operation.ProtoReflect.Descriptor instead.

func (*Operation) GetInterfaces

func (x *Operation) GetInterfaces() []string

func (*Operation) GetMethods

func (x *Operation) GetMethods() []string

func (*Operation) GetNotInterfaces

func (x *Operation) GetNotInterfaces() []string

func (*Operation) GetNotMethods

func (x *Operation) GetNotMethods() []string

func (*Operation) MarshalJSON

func (this *Operation) MarshalJSON() ([]byte, error)

MarshalJSON is a custom marshaler for Operation

func (*Operation) ProtoMessage

func (*Operation) ProtoMessage()

func (*Operation) ProtoReflect

func (x *Operation) ProtoReflect() protoreflect.Message

func (*Operation) Reset

func (x *Operation) Reset()

func (*Operation) String

func (x *Operation) String() string

func (*Operation) UnmarshalJSON

func (this *Operation) UnmarshalJSON(b []byte) error

UnmarshalJSON is a custom unmarshaler for Operation

type Rule

type Rule struct {

	// Optional. from specifies the source of a request.
	//
	// If not set, any source is allowed.
	From []*Rule_From `protobuf:"bytes,1,rep,name=from,proto3" json:"from,omitempty"`
	// Optional. to specifies the operation of a request.
	//
	// If not set, any operation is allowed.
	To []*Rule_To `protobuf:"bytes,2,rep,name=to,proto3" json:"to,omitempty"`
	// contains filtered or unexported fields
}

Rule matches requests from a list of sources that perform a list of operations subject to a list of conditions. A match occurs when at least one source, one operation and all conditions matches the request. An empty rule is always matched.

Any string field in the rule supports Exact, Prefix, Suffix and Presence match:

- Exact match: "abc" will match on value "abc". - Prefix match: "abc*" will match on value "abc" and "abcd". - Suffix match: "*abc" will match on value "abc" and "xabc". - Presence match: "*" will match when value is not empty.

func (*Rule) DeepCopy

func (in *Rule) DeepCopy() *Rule

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Rule. Required by controller-gen.

func (*Rule) DeepCopyInterface

func (in *Rule) DeepCopyInterface() interface{}

DeepCopyInterface is an autogenerated deepcopy function, copying the receiver, creating a new Rule. Required by controller-gen.

func (*Rule) DeepCopyInto

func (in *Rule) DeepCopyInto(out *Rule)

DeepCopyInto supports using Rule within kubernetes types, where deepcopy-gen is used.

func (*Rule) Descriptor deprecated

func (*Rule) Descriptor() ([]byte, []int)

Deprecated: Use Rule.ProtoReflect.Descriptor instead.

func (*Rule) GetFrom

func (x *Rule) GetFrom() []*Rule_From

func (*Rule) GetTo

func (x *Rule) GetTo() []*Rule_To

func (*Rule) MarshalJSON

func (this *Rule) MarshalJSON() ([]byte, error)

MarshalJSON is a custom marshaler for Rule

func (*Rule) ProtoMessage

func (*Rule) ProtoMessage()

func (*Rule) ProtoReflect

func (x *Rule) ProtoReflect() protoreflect.Message

func (*Rule) Reset

func (x *Rule) Reset()

func (*Rule) String

func (x *Rule) String() string

func (*Rule) UnmarshalJSON

func (this *Rule) UnmarshalJSON(b []byte) error

UnmarshalJSON is a custom unmarshaler for Rule

type Rule_From

type Rule_From struct {

	// Source specifies the source of a request.
	Source *Source `protobuf:"bytes,1,opt,name=source,proto3" json:"source,omitempty"`
	// contains filtered or unexported fields
}

From includes a list or sources.

func (*Rule_From) DeepCopy

func (in *Rule_From) DeepCopy() *Rule_From

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Rule_From. Required by controller-gen.

func (*Rule_From) DeepCopyInterface

func (in *Rule_From) DeepCopyInterface() interface{}

DeepCopyInterface is an autogenerated deepcopy function, copying the receiver, creating a new Rule_From. Required by controller-gen.

func (*Rule_From) DeepCopyInto

func (in *Rule_From) DeepCopyInto(out *Rule_From)

DeepCopyInto supports using Rule_From within kubernetes types, where deepcopy-gen is used.

func (*Rule_From) Descriptor deprecated

func (*Rule_From) Descriptor() ([]byte, []int)

Deprecated: Use Rule_From.ProtoReflect.Descriptor instead.

func (*Rule_From) GetSource

func (x *Rule_From) GetSource() *Source

func (*Rule_From) MarshalJSON

func (this *Rule_From) MarshalJSON() ([]byte, error)

MarshalJSON is a custom marshaler for Rule_From

func (*Rule_From) ProtoMessage

func (*Rule_From) ProtoMessage()

func (*Rule_From) ProtoReflect

func (x *Rule_From) ProtoReflect() protoreflect.Message

func (*Rule_From) Reset

func (x *Rule_From) Reset()

func (*Rule_From) String

func (x *Rule_From) String() string

func (*Rule_From) UnmarshalJSON

func (this *Rule_From) UnmarshalJSON(b []byte) error

UnmarshalJSON is a custom unmarshaler for Rule_From

type Rule_To

type Rule_To struct {

	// Operation specifies the operation of a request.
	Operation *Operation `protobuf:"bytes,1,opt,name=operation,proto3" json:"operation,omitempty"`
	// contains filtered or unexported fields
}

To includes a list or operations.

func (*Rule_To) DeepCopy

func (in *Rule_To) DeepCopy() *Rule_To

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Rule_To. Required by controller-gen.

func (*Rule_To) DeepCopyInterface

func (in *Rule_To) DeepCopyInterface() interface{}

DeepCopyInterface is an autogenerated deepcopy function, copying the receiver, creating a new Rule_To. Required by controller-gen.

func (*Rule_To) DeepCopyInto

func (in *Rule_To) DeepCopyInto(out *Rule_To)

DeepCopyInto supports using Rule_To within kubernetes types, where deepcopy-gen is used.

func (*Rule_To) Descriptor deprecated

func (*Rule_To) Descriptor() ([]byte, []int)

Deprecated: Use Rule_To.ProtoReflect.Descriptor instead.

func (*Rule_To) GetOperation

func (x *Rule_To) GetOperation() *Operation

func (*Rule_To) MarshalJSON

func (this *Rule_To) MarshalJSON() ([]byte, error)

MarshalJSON is a custom marshaler for Rule_To

func (*Rule_To) ProtoMessage

func (*Rule_To) ProtoMessage()

func (*Rule_To) ProtoReflect

func (x *Rule_To) ProtoReflect() protoreflect.Message

func (*Rule_To) Reset

func (x *Rule_To) Reset()

func (*Rule_To) String

func (x *Rule_To) String() string

func (*Rule_To) UnmarshalJSON

func (this *Rule_To) UnmarshalJSON(b []byte) error

UnmarshalJSON is a custom unmarshaler for Rule_To

type Source

type Source struct {

	// Optional. A list of source peer identities (i.e. service account), which
	// matches to the "source.principal" attribute. This field requires mTLS enabled.
	//
	// If not set, any principal is allowed.
	Principals []string `protobuf:"bytes,1,rep,name=principals,proto3" json:"principals,omitempty"`
	// Optional. A list of negative match of source peer identities.
	NotPrincipals []string `protobuf:"bytes,2,rep,name=not_principals,json=notPrincipals,proto3" json:"not_principals,omitempty"`
	// Optional. A list of namespaces, which matches to the "source.namespace"
	// attribute. This field requires mTLS enabled.
	//
	// If not set, any namespace is allowed.
	Namespaces []string `protobuf:"bytes,3,rep,name=namespaces,proto3" json:"namespaces,omitempty"`
	// Optional. A list of negative match of namespaces.
	NotNamespaces []string `protobuf:"bytes,4,rep,name=not_namespaces,json=notNamespaces,proto3" json:"not_namespaces,omitempty"`
	// contains filtered or unexported fields
}

Source specifies the source identities of a request. Fields in the source are ANDed together.

For example, the following source matches if the principal is "admin" or "dev" and the namespace is "prod" or "test".

```yaml principals: ["admin", "dev"] namespaces: ["prod", "test"] ```

func (*Source) DeepCopy

func (in *Source) DeepCopy() *Source

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Source. Required by controller-gen.

func (*Source) DeepCopyInterface

func (in *Source) DeepCopyInterface() interface{}

DeepCopyInterface is an autogenerated deepcopy function, copying the receiver, creating a new Source. Required by controller-gen.

func (*Source) DeepCopyInto

func (in *Source) DeepCopyInto(out *Source)

DeepCopyInto supports using Source within kubernetes types, where deepcopy-gen is used.

func (*Source) Descriptor deprecated

func (*Source) Descriptor() ([]byte, []int)

Deprecated: Use Source.ProtoReflect.Descriptor instead.

func (*Source) GetNamespaces

func (x *Source) GetNamespaces() []string

func (*Source) GetNotNamespaces

func (x *Source) GetNotNamespaces() []string

func (*Source) GetNotPrincipals

func (x *Source) GetNotPrincipals() []string

func (*Source) GetPrincipals

func (x *Source) GetPrincipals() []string

func (*Source) MarshalJSON

func (this *Source) MarshalJSON() ([]byte, error)

MarshalJSON is a custom marshaler for Source

func (*Source) ProtoMessage

func (*Source) ProtoMessage()

func (*Source) ProtoReflect

func (x *Source) ProtoReflect() protoreflect.Message

func (*Source) Reset

func (x *Source) Reset()

func (*Source) String

func (x *Source) String() string

func (*Source) UnmarshalJSON

func (this *Source) UnmarshalJSON(b []byte) error

UnmarshalJSON is a custom unmarshaler for Source

Jump to

Keyboard shortcuts

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