Connector [accesspolicies.alauda.io/v1alpha1]
- Description
- AccessPolicy defines the access strategy for Connectors in a namespace. It specifies which Connectors are covered and what permissions are granted, either automatically (defaultPermission) or after approval checks pass (checkGrantedPermission).
- Type
object
Specification
.spec
- Description
- AccessPolicySpec defines the desired state of AccessPolicy.
- Type
object
.spec.checkGrantedPermission
- Description
- CheckGrantedPermission defines permissions granted only after approval checks pass.
- Type
object- Required
spec
.spec.checkGrantedPermission.spec
- Description
- Spec contains the check rules and the permissions to grant after all checks pass.
- Type
object- Required
checksroleTemplate
.spec.checkGrantedPermission.spec.checks
- Description
- Checks is the list of approval check rules.
- Type
array
.spec.checkGrantedPermission.spec.checks[]
- Description
- CheckRule defines a check rule that must pass for a permission to be granted. it contains either a reference to a CheckRuleSpec stored in a ConfigMap or the CheckRuleSpec itself. you can specify either Ref or Spec, but not both.
- Type
object- Required
name
.spec.checkGrantedPermission.spec.checks[].ref
- Description
- Ref is a reference to a CheckRuleSpec stored in a ConfigMap.
- Type
object- Required
configMap
.spec.checkGrantedPermission.spec.checks[].ref.configMap
- Description
- ConfigMap references the ConfigMap containing the CheckRuleSpec.
- Type
object
.spec.checkGrantedPermission.spec.checks[].spec
- Description
- Spec contains the check rule specification.
- Type
object- Required
selector
.spec.checkGrantedPermission.spec.checks[].spec.selector
- Description
- Selector specifies how to find the Check Duck Type resource.
- Type
object- Required
objectRef
.spec.checkGrantedPermission.spec.checks[].spec.selector.matchExpressions
- Description
- matchExpressions is a list of label selector requirements. The requirements are ANDed.
- Type
array
.spec.checkGrantedPermission.spec.checks[].spec.selector.matchExpressions[]
- Description
- A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- Type
object- Required
keyoperator
.spec.checkGrantedPermission.spec.checks[].spec.selector.matchExpressions[].values
- Description
- values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- Type
array
.spec.checkGrantedPermission.spec.checks[].spec.selector.matchExpressions[].values[]
- Type
string
.spec.checkGrantedPermission.spec.checks[].spec.selector.matchLabels
- Description
- matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- Type
object
.spec.checkGrantedPermission.spec.checks[].spec.selector.objectRef
- Description
- ObjectRef specifies the reference to the object to check against. kind and apiVersion are required to distinguish different duck types
- Type
object
.spec.checkGrantedPermission.spec.checks[].spec.state
- Description
- State configures how the check result is computed. If empty, the default duck-type field status.state is used.
- Type
object
.spec.checkGrantedPermission.spec.roleTemplate
- Description
- RoleTemplate defines the rules for the generated Role.
- Type
object
.spec.checkGrantedPermission.spec.roleTemplate.ref
- Description
- Ref specifies a reference to a RoleTemplate
- Type
object
.spec.checkGrantedPermission.spec.roleTemplate.ref.configMap
- Description
- ConfigMap specifies a local reference to a ConfigMap whose data["rules"] contains the YAML-encoded list of rbacv1.PolicyRule entries. Only ConfigMaps in the connectors system namespace are supported.
- Type
object
.spec.connector
- Description
- Connector specifies which Connectors this policy applies to. If empty, the policy applies to all Connectors in the namespace.
- Type
object
.spec.connector.matchExpressions
- Description
- matchExpressions is a list of label selector requirements. The requirements are ANDed.
- Type
array
.spec.connector.matchExpressions[]
- Description
- A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- Type
object- Required
keyoperator
.spec.connector.matchExpressions[].values
- Description
- values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- Type
array
.spec.connector.matchExpressions[].values[]
- Type
string
.spec.connector.matchLabels
- Description
- matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- Type
object
.spec.connector.names
- Description
- Names is an explicit list of resource names to match.
- Type
array
.spec.connector.names[]
- Type
string
.spec.defaultPermission
- Description
- DefaultPermission defines the Role and RoleBinding automatically granted without any approval check.
- Type
object- Required
bindingTemplateroleTemplate
.spec.defaultPermission.bindingTemplate
- Description
- BindingTemplate defines the subjects for the generated RoleBinding.
- Type
object
.spec.defaultPermission.bindingTemplate.serviceAccounts
- Description
- ServiceAccounts is the list of service account templates to bind.
- Type
array
.spec.defaultPermission.bindingTemplate.serviceAccounts[]
- Description
- ServiceAccountTemplate defines a template for binding ServiceAccounts. it extends rbacv1.Subject with dynamic label-based selectors.
- Type
object
.spec.defaultPermission.bindingTemplate.serviceAccounts[].names
- Description
- Names is the list of service account names to bind.
- Type
array
.spec.defaultPermission.bindingTemplate.serviceAccounts[].names[]
- Type
string
.spec.defaultPermission.bindingTemplate.serviceAccounts[].namespaceSelector
- Description
- NamespaceSelector selects Namespaces by label and/or name.
- Type
object
.spec.defaultPermission.bindingTemplate.serviceAccounts[].namespaceSelector.matchExpressions
- Description
- matchExpressions is a list of label selector requirements. The requirements are ANDed.
- Type
array
.spec.defaultPermission.bindingTemplate.serviceAccounts[].namespaceSelector.matchExpressions[]
- Description
- A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
- Type
object- Required
keyoperator
.spec.defaultPermission.bindingTemplate.serviceAccounts[].namespaceSelector.matchExpressions[].values
- Description
- values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
- Type
array
.spec.defaultPermission.bindingTemplate.serviceAccounts[].namespaceSelector.matchExpressions[].values[]
- Type
string
.spec.defaultPermission.bindingTemplate.serviceAccounts[].namespaceSelector.matchLabels
- Description
- matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
- Type
object
.spec.defaultPermission.bindingTemplate.serviceAccounts[].namespaceSelector.names
- Description
- Names is an explicit list of resource names to match.
- Type
array
.spec.defaultPermission.bindingTemplate.serviceAccounts[].namespaceSelector.names[]
- Type
string
.spec.defaultPermission.roleTemplate
- Description
- RoleTemplate defines the rules to include in the generated Role.
- Type
object
.spec.defaultPermission.roleTemplate.ref
- Description
- Ref specifies a reference to a RoleTemplate
- Type
object
.spec.defaultPermission.roleTemplate.ref.configMap
- Description
- ConfigMap specifies a local reference to a ConfigMap whose data["rules"] contains the YAML-encoded list of rbacv1.PolicyRule entries. Only ConfigMaps in the connectors system namespace are supported.
- Type
object
.status
- Description
- AccessPolicyStatus defines the observed state of AccessPolicy.
- Type
object
.status.annotations
- Description
- Annotations is additional Status fields for the Resource to save some additional State as well as convey more information to the user. This is roughly akin to Annotations on any k8s resource, just the reconciler conveying richer information outwards.
- Type
object
.status.conditions
- Description
- Conditions the latest available observations of a resource's current state.
- Type
array
.status.conditions[]
- Description
- Condition defines a readiness condition for a Knative resource. See: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#typical-status-properties
- Type
object- Required
statustype
.status.matchedConnectors
- Description
- MatchedConnectors records the Connector names matched by spec.connector.
- Type
array
.status.matchedConnectors[]
- Description
- LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace.
- Type
object
API Endpoints
The following API endpoints are available:
/apis/connectors.alauda.io/v1alpha1/namespaces/{namespace}/accesspoliciesDELETE: delete collection of AccessPolicyGET: list objects of kind AccessPolicyPOST: create a new AccessPolicy
/apis/connectors.alauda.io/v1alpha1/namespaces/{namespace}/accesspolicies/{name}DELETE: delete the specified AccessPolicyGET: read the specified AccessPolicyPATCH: partially update the specified AccessPolicyPUT: replace the specified AccessPolicy
/apis/connectors.alauda.io/v1alpha1/namespaces/{namespace}/accesspolicies/{name}/statusGET: read status of the specified AccessPolicyPATCH: partially update status of the specified AccessPolicyPUT: replace status of the specified AccessPolicy
/apis/connectors.alauda.io/v1alpha1/namespaces/{namespace}/accesspolicies
- HTTP method
DELETE- Description
- delete collection of AccessPolicy
- HTTP responses
- HTTP method
GET- Description
- list objects of kind AccessPolicy
- HTTP responses
- HTTP method
POST- Description
- create a new AccessPolicy
- Query parameters
- Body parameters
- HTTP responses
/apis/connectors.alauda.io/v1alpha1/namespaces/{namespace}/accesspolicies/{name}
- HTTP method
DELETE- Description
- delete the specified AccessPolicy
- Query parameters
- HTTP responses
- HTTP method
GET- Description
- read the specified AccessPolicy
- HTTP responses
- HTTP method
PATCH- Description
- partially update the specified AccessPolicy
- Query parameters
- HTTP responses
- HTTP method
PUT- Description
- replace the specified AccessPolicy
- Query parameters
- Body parameters
- HTTP responses
/apis/connectors.alauda.io/v1alpha1/namespaces/{namespace}/accesspolicies/{name}/status
- HTTP method
GET- Description
- read status of the specified AccessPolicy
- HTTP responses
- HTTP method
PATCH- Description
- partially update status of the specified AccessPolicy
- Query parameters
- HTTP responses
- HTTP method
PUT- Description
- replace status of the specified AccessPolicy
- Query parameters
- Body parameters
- HTTP responses