Connector [accessrequests.alauda.io/v1alpha1]
- Description
- AccessRequest represents a subject's access application for a specific Connector, scoped to the lifecycle of a context object (Pod). It tracks matched AccessPolicies, approval check states, and authorization status via conditions.
- Type
object
Specification
.spec
- Description
- AccessRequestSpec defines the desired state of AccessRequest.
- Type
object- Required
connectorRefcontextsubject
.spec.connectorRef
- Description
- ConnectorRef references the target Connector in the same namespace. Only Name is required; Namespace is always the same as the AccessRequest.
- Type
object
.spec.context
- Description
- Context provides lifecycle context for this request. Currently only Kind=Pod is supported.
- Type
object- Required
objectRef
.spec.context.objectRef
- Description
- ObjectRef points to the lifecycle object (e.g., a Pod). Currently only Kind=Pod is supported.
- Type
object
.spec.subject
- Description
- Subject is the identity requesting access (typically a ServiceAccount).
- Type
object- Required
kindname
.status
- Description
- AccessRequestStatus records the observed state of AccessRequest.
- 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.policies
- Description
- Policies holds the matched AccessPolicy status list. Full AccessPolicy snapshots are stored to prevent policy changes from affecting in-flight authorization decisions.
- Type
array
.status.policies[]
- Description
- AccessPolicyMatchedStatus records a matched AccessPolicy and its check results.
- Type
object- Required
namepolicySpec
.status.policies[].matchedChecks
- Description
- MatchedChecks records the matched Check Duck Type resources and their states.
- Type
array
.status.policies[].matchedChecks[]
- Description
- MatchedCheck records one matched Check Duck Type resource instance.
- Type
object- Required
conditionnameref
.status.policies[].matchedChecks[].condition
- Description
- Condition records the computed approval condition of this check.
- Type
object- Required
statustype
.status.policies[].matchedChecks[].ref
- Description
- Ref identifies the matched Check Duck Type resource instance.
- Type
object
.status.policies[].permissionSync
- Description
- PermissionSync records policy-level permission synchronization condition.
- Type
object- Required
lastTransitionTimemessagereasonstatustype
.status.policies[].policySpec
- Description
- PolicySpec is the full AccessPolicy spec snapshot at match time.
- Type
object
.status.policies[].policySpec.checkGrantedPermission
- Description
- CheckGrantedPermission defines permissions granted only after approval checks pass.
- Type
object- Required
spec
.status.policies[].policySpec.checkGrantedPermission.spec
- Description
- Spec contains the check rules and the permissions to grant after all checks pass.
- Type
object- Required
checksroleTemplate
.status.policies[].policySpec.checkGrantedPermission.spec.checks
- Description
- Checks is the list of approval check rules.
- Type
array
.status.policies[].policySpec.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
.status.policies[].policySpec.checkGrantedPermission.spec.checks[].ref
- Description
- Ref is a reference to a CheckRuleSpec stored in a ConfigMap.
- Type
object- Required
configMap
.status.policies[].policySpec.checkGrantedPermission.spec.checks[].ref.configMap
- Description
- ConfigMap references the ConfigMap containing the CheckRuleSpec.
- Type
object
.status.policies[].policySpec.checkGrantedPermission.spec.checks[].spec
- Description
- Spec contains the check rule specification.
- Type
object- Required
selector
.status.policies[].policySpec.checkGrantedPermission.spec.checks[].spec.selector
- Description
- Selector specifies how to find the Check Duck Type resource.
- Type
object- Required
objectRef
.status.policies[].policySpec.checkGrantedPermission.spec.checks[].spec.selector.matchExpressions
- Description
- matchExpressions is a list of label selector requirements. The requirements are ANDed.
- Type
array
.status.policies[].policySpec.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
.status.policies[].policySpec.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
.status.policies[].policySpec.checkGrantedPermission.spec.checks[].spec.selector.matchExpressions[].values[]
- Type
string
.status.policies[].policySpec.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
.status.policies[].policySpec.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
.status.policies[].policySpec.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
.status.policies[].policySpec.checkGrantedPermission.spec.roleTemplate
- Description
- RoleTemplate defines the rules for the generated Role.
- Type
object
.status.policies[].policySpec.checkGrantedPermission.spec.roleTemplate.ref
- Description
- Ref specifies a reference to a RoleTemplate
- Type
object
.status.policies[].policySpec.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
.status.policies[].policySpec.connector
- Description
- Connector specifies which Connectors this policy applies to. If empty, the policy applies to all Connectors in the namespace.
- Type
object
.status.policies[].policySpec.connector.matchExpressions
- Description
- matchExpressions is a list of label selector requirements. The requirements are ANDed.
- Type
array
.status.policies[].policySpec.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
.status.policies[].policySpec.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
.status.policies[].policySpec.connector.matchExpressions[].values[]
- Type
string
.status.policies[].policySpec.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
.status.policies[].policySpec.connector.names
- Description
- Names is an explicit list of resource names to match.
- Type
array
.status.policies[].policySpec.connector.names[]
- Type
string
.status.policies[].policySpec.defaultPermission
- Description
- DefaultPermission defines the Role and RoleBinding automatically granted without any approval check.
- Type
object- Required
bindingTemplateroleTemplate
.status.policies[].policySpec.defaultPermission.bindingTemplate
- Description
- BindingTemplate defines the subjects for the generated RoleBinding.
- Type
object
.status.policies[].policySpec.defaultPermission.bindingTemplate.serviceAccounts
- Description
- ServiceAccounts is the list of service account templates to bind.
- Type
array
.status.policies[].policySpec.defaultPermission.bindingTemplate.serviceAccounts[]
- Description
- ServiceAccountTemplate defines a template for binding ServiceAccounts. it extends rbacv1.Subject with dynamic label-based selectors.
- Type
object
.status.policies[].policySpec.defaultPermission.bindingTemplate.serviceAccounts[].names
- Description
- Names is the list of service account names to bind.
- Type
array
.status.policies[].policySpec.defaultPermission.bindingTemplate.serviceAccounts[].names[]
- Type
string
.status.policies[].policySpec.defaultPermission.bindingTemplate.serviceAccounts[].namespaceSelector
- Description
- NamespaceSelector selects Namespaces by label and/or name.
- Type
object
.status.policies[].policySpec.defaultPermission.bindingTemplate.serviceAccounts[].namespaceSelector.matchExpressions
- Description
- matchExpressions is a list of label selector requirements. The requirements are ANDed.
- Type
array
.status.policies[].policySpec.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
.status.policies[].policySpec.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
.status.policies[].policySpec.defaultPermission.bindingTemplate.serviceAccounts[].namespaceSelector.matchExpressions[].values[]
- Type
string
.status.policies[].policySpec.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
.status.policies[].policySpec.defaultPermission.bindingTemplate.serviceAccounts[].namespaceSelector.names
- Description
- Names is an explicit list of resource names to match.
- Type
array
.status.policies[].policySpec.defaultPermission.bindingTemplate.serviceAccounts[].namespaceSelector.names[]
- Type
string
.status.policies[].policySpec.defaultPermission.roleTemplate
- Description
- RoleTemplate defines the rules to include in the generated Role.
- Type
object
.status.policies[].policySpec.defaultPermission.roleTemplate.ref
- Description
- Ref specifies a reference to a RoleTemplate
- Type
object
.status.policies[].policySpec.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
API Endpoints
The following API endpoints are available:
/apis/connectors.alauda.io/v1alpha1/namespaces/{namespace}/accessrequestsDELETE: delete collection of AccessRequestGET: list objects of kind AccessRequestPOST: create a new AccessRequest
/apis/connectors.alauda.io/v1alpha1/namespaces/{namespace}/accessrequests/{name}DELETE: delete the specified AccessRequestGET: read the specified AccessRequestPATCH: partially update the specified AccessRequestPUT: replace the specified AccessRequest
/apis/connectors.alauda.io/v1alpha1/namespaces/{namespace}/accessrequests/{name}/statusGET: read status of the specified AccessRequestPATCH: partially update status of the specified AccessRequestPUT: replace status of the specified AccessRequest
/apis/connectors.alauda.io/v1alpha1/namespaces/{namespace}/accessrequests
- HTTP method
DELETE- Description
- delete collection of AccessRequest
- HTTP responses
- HTTP method
GET- Description
- list objects of kind AccessRequest
- HTTP responses
- HTTP method
POST- Description
- create a new AccessRequest
- Query parameters
- Body parameters
- HTTP responses
/apis/connectors.alauda.io/v1alpha1/namespaces/{namespace}/accessrequests/{name}
- HTTP method
DELETE- Description
- delete the specified AccessRequest
- Query parameters
- HTTP responses
- HTTP method
GET- Description
- read the specified AccessRequest
- HTTP responses
- HTTP method
PATCH- Description
- partially update the specified AccessRequest
- Query parameters
- HTTP responses
- HTTP method
PUT- Description
- replace the specified AccessRequest
- Query parameters
- Body parameters
- HTTP responses
/apis/connectors.alauda.io/v1alpha1/namespaces/{namespace}/accessrequests/{name}/status
- HTTP method
GET- Description
- read status of the specified AccessRequest
- HTTP responses
- HTTP method
PATCH- Description
- partially update status of the specified AccessRequest
- Query parameters
- HTTP responses
- HTTP method
PUT- Description
- replace status of the specified AccessRequest
- Query parameters
- Body parameters
- HTTP responses