Kubernetes API Access
Kubernetes privileges are needed by the Cloud Pak for Business Automation operators to install and manage deployments. The operators use service accounts that are granted specific privileges. You can access the Kubernetes API by using the kubectl command line tool.
To access a cluster, you need to know the location of the cluster and have credentials to access it. You can check the location and credentials by running the following command:
kubectl config view
To access the REST API with an HTTP client, you can either run kubectl in proxy
mode or you can provide the location and credentials directly to the HTTP client. In proxy mode, you
can verify the identity of the API server by using a self-signed certificate. Direct access over
HTTP needs you to import a root certificate into your client.
Role-based access control (RBAC) helps to define access to the Kubernetes API resources based on the roles of users within your organization. An RBAC role contains rules that represent a set of permissions. A role binding grants the permissions that are defined in a role to a user or a set of users (users, groups, or service accounts).
All Cloud Pak for Business Automation operators and some patterns and components create a service account to provide an identity for running its processes. The operations that require user access use the binding of the service account to a role.
- Cloud Pak for Business Automation (CP4BA) multi-pattern operator
- CP4BA Foundation operator
- CP4BA FileNet Content Manager operator
- CP4BA Insights Engine operator
- CP4BA Workflow Process Service operator
- CP4BA Process Federation Server operator
- CP4BA Workflow Runtime operator
- CP4BA Document Processing Engine operator
- Automation Decision Services
- Automation Document Processing
- Business Automation Application
- Business Automation Workflow
- Business Automation Workstreams
- Business Automation Insights
- FileNet Content Manager
- Operational Decision Manager
- Process Federation Server
- Workflow Process Service
- Business Automation Navigator
- Business Automation Studio
- Machine Learning
Cloud Pak for Business Automation (CP4BA) multi-pattern operator
The CP4BA multi-pattern operator creates the following service account:
ibm-cp4a-operator
This service account binds to the following role:
ibm-cp4a-operator
This role has the following rules:
- rules:
- apiGroups:
- ""
resources:
- pods
- services
- endpoints
- persistentvolumeclaims
- events
- configmaps
- secrets
- serviceaccounts
- namespaces
verbs:
- watch
- get
- list
- create
- delete
- update
- patch
- use
- apiGroups:
- apps
resources:
- deployments
- replicasets
- statefulsets
verbs:
- create
- list
- delete
- update
- patch
- get
- watch
- apiGroups:
- monitoring.coreos.com
resources:
- servicemonitors
verbs:
- get
- create
- apiGroups:
- apps
resourceNames:
- ibm-cp4a-operator
resources:
- deployments/finalizers
verbs:
- update
- apiGroups:
- icp4a.ibm.com
resources:
- '*'
verbs:
- get
- list
- update
- patch
- delete
- create
- watch
- apiGroups:
- ""
resources:
- pods/exec
- pods/log
verbs:
- create
- get
- watch
- list
- apiGroups:
- autoscaling
resources:
- horizontalpodautoscalers
verbs:
- get
- list
- create
- delete
- update
- patch
- watch
- apiGroups:
- policy
resources:
- poddisruptionbudgets
- podsecuritypolicies
verbs:
- get
- list
- create
- delete
- update
- patch
- watch
- apiGroups:
- networking.k8s.io
resources:
- networkpolicies
- ingresses
verbs:
- get
- list
- create
- delete
- update
- patch
- watch
- apiGroups:
- rbac.authorization.k8s.io
resources:
- roles
- rolebindings
verbs:
- get
- list
- create
- delete
- update
- patch
- watch
- apiGroups:
- batch
resources:
- jobs
- cronjobs
- deployments
verbs:
- create
- list
- delete
- update
- patch
- get
- wait
- watch
- apiGroups:
- ""
- route.openshift.io
resources:
- routes
verbs:
- get
- list
- create
- delete
- update
- patch
- watch
- apiGroups:
- ""
- route.openshift.io
resources:
- routes/custom-host
verbs:
- get
- create
- list
- delete
- update
- patch
- watch
- apiGroups:
- extensions
resources:
- ingresses
- jobs
- deployments
- networkpolicies
- replicasets
verbs:
- get
- list
- create
- delete
- update
- patch
- apiGroups:
- core.automation.ibm.com
resources:
- cartridges
- automationuiconfigs
verbs:
- create
- watch
- list
- get
- delete
- update
- patch
- apiGroups:
- base.automation.ibm.com
resources:
- cartridgerequirements
- automationbases
verbs:
- create
- list
- get
- update
- patch
- watch
- delete
- apiGroups:
- eventprocessing.automation.ibm.com
resources:
- eventprocessors
verbs:
- create
- get
- delete
- list
- patch
- watch
- apiGroups:
- insightsengine.automation.ibm.com
resources:
- insightsengines
verbs:
- create
- get
- list
- delete
- patch
- update
- watch
- apiGroups:
- certmanager.k8s.io
resources:
- issuers
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- cert-manager.io
resources:
- issuers
- certificates
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- oidc.security.ibm.com
resources:
- clients
verbs:
- create
- delete
- get
- list
- watch
- patch
- apiGroups:
- zen.cpd.ibm.com
resources:
- zenservices
- zenextensions
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- ibmevents.ibm.com
resources:
- kafkas
- kafkausers
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- elastic.automation.ibm.com
resources:
- elasticsearches
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- elasticsearch.opencontent.ibm.com
resources:
- elasticsearchclusters
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- icp4a.ibm.com
resources:
- federatedsystems
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- icp4a.ibm.com
resources:
- workflowruntimes
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- icp4a.ibm.com
resources:
- businessautomationmachinelearnings
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
CP4BA Foundation operator
The CP4BA Foundation operator creates the following service account:
icp4a-foundation-operator
This service account binds to the following role:
icp4a-foundation-operator
This role has the following rules:
- rules:
- apiGroups:
- ""
resources:
- pods
- services
- endpoints
- persistentvolumeclaims
- events
- configmaps
- secrets
- serviceaccounts
verbs:
- '*'
- apiGroups:
- apps
resources:
- deployments
- daemonsets
- replicasets
- statefulsets
verbs:
- '*'
- apiGroups:
- monitoring.coreos.com
resources:
- servicemonitors
verbs:
- get
- create
- apiGroups:
- apps
resourceNames:
- icp4a-foundation-operator
resources:
- deployments/finalizers
verbs:
- update
- apiGroups:
- icp4a.ibm.com
resources:
- '*'
verbs:
- '*'
- apiGroups:
- ""
resources:
- pods/exec
- pods/log
verbs:
- '*'
- apiGroups:
- autoscaling
resources:
- horizontalpodautoscalers
verbs:
- '*'
- apiGroups:
- policy
resources:
- poddisruptionbudgets
- podsecuritypolicies
verbs:
- '*'
- apiGroups:
- networking.k8s.io
resources:
- networkpolicies
- ingresses
verbs:
- '*'
- apiGroups:
- rbac.authorization.k8s.io
resources:
- roles
- rolebindings
verbs:
- '*'
- apiGroups:
- batch
resources:
- jobs
- cronjobs
- deployments
verbs:
- '*'
- apiGroups:
- ""
- route.openshift.io
resources:
- routes
verbs:
- '*'
- apiGroups:
- ""
- route.openshift.io
resources:
- routes/custom-host
verbs:
- '*'
- apiGroups:
- extensions
resources:
- ingresses
- jobs
- deployments
- networkpolicies
- replicasets
verbs:
- '*'
- apiGroups:
- oidc.security.ibm.com
resources:
- clients
verbs:
- '*'
CP4BA FileNet Content Manager operator
The CP4BA FileNet® Content Manager operator creates the following service account:
ibm-cp4a-content-operator
This service account binds to the following role:
ibm-content-operator
This role has the following rules:
- rules:
- apiGroups:
- ""
resources:
- pods
- services
- endpoints
- persistentvolumeclaims
- events
- configmaps
- secrets
- serviceaccounts
- namespaces
verbs:
- watch
- get
- list
- create
- delete
- update
- patch
- use
- apiGroups:
- apps
resources:
- deployments
- daemonsets
- replicasets
- statefulsets
verbs:
- create
- list
- delete
- update
- patch
- get
- watch
- apiGroups:
- monitoring.coreos.com
resources:
- servicemonitors
verbs:
- get
- list
- watch
- create
- apiGroups:
- apps
resourceNames:
- ibm-content-operator
resources:
- deployments/finalizers
verbs:
- update
- apiGroups:
- icp4a.ibm.com
resources:
- '*'
verbs:
- get
- list
- update
- patch
- delete
- create
- watch
- apiGroups:
- ""
resources:
- pods/exec
- pods/log
verbs:
- create
- get
- watch
- list
- apiGroups:
- autoscaling
resources:
- horizontalpodautoscalers
verbs:
- get
- list
- create
- delete
- update
- patch
- watch
- apiGroups:
- policy
resources:
- poddisruptionbudgets
- podsecuritypolicies
verbs:
- get
- list
- create
- delete
- update
- patch
- watch
- apiGroups:
- networking.k8s.io
resources:
- networkpolicies
- ingresses
verbs:
- get
- list
- create
- delete
- update
- patch
- watch
- apiGroups:
- rbac.authorization.k8s.io
resources:
- roles
- rolebindings
verbs:
- get
- list
- create
- delete
- update
- patch
- watch
- apiGroups:
- batch
resources:
- jobs
- cronjobs
- deployments
verbs:
- create
- list
- delete
- update
- patch
- get
- wait
- watch
- apiGroups:
- ""
- route.openshift.io
resources:
- routes
verbs:
- get
- list
- create
- delete
- update
- patch
- watch
- apiGroups:
- ""
- route.openshift.io
resources:
- routes/custom-host
verbs:
- get
- create
- list
- delete
- update
- patch
- watch
- apiGroups:
- extensions
resources:
- ingresses
- jobs
- deployments
- networkpolicies
- replicasets
verbs:
- get
- list
- create
- delete
- update
- patch
- apiGroups:
- core.automation.ibm.com
resources:
- cartridges
- automationuiconfigs
verbs:
- create
- watch
- list
- get
- delete
- update
- patch
- apiGroups:
- base.automation.ibm.com
resources:
- cartridgerequirements
- automationbases
verbs:
- create
- list
- get
- update
- patch
- watch
- delete
- apiGroups:
- eventprocessing.automation.ibm.com
resources:
- eventprocessors
verbs:
- create
- get
- delete
- list
- patch
- watch
- apiGroups:
- insightsengine.automation.ibm.com
resources:
- insightsengines
verbs:
- create
- get
- list
- delete
- patch
- update
- watch
- apiGroups:
- certmanager.k8s.io
resources:
- issuers
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- oidc.security.ibm.com
resources:
- clients
verbs:
- create
- delete
- get
- list
- watch
- patch
CP4BA Insights Engine operator
The CP4BA Insights Engine operator creates the following service account:
ibm-insights-engine-operator
This service account binds to the following role:
ibm-insights-engine-operator
This role has the following rules:
- rules:
- apiGroups:
- ""
resources:
- pods
- pods/exec
- pods/log
- services
- endpoints
- persistentvolumeclaims
- events
- configmaps
- secrets
- serviceaccounts
- namespaces
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- apps
resources:
- deployments
- deployments/finalizers
- daemonsets
- replicasets
- statefulsets
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- monitoring.coreos.com
resources:
- servicemonitors
verbs:
- get
- create
- delete
- list
- patch
- update
- watch
- apiGroups:
- apps
resourceNames:
- ibm-insights-engine-operator
resources:
- deployments/finalizers
verbs:
- update
- apiGroups:
- icp4a.ibm.com
resources:
- '*'
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- certmanager.k8s.io
resources:
- certificates
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- certmanager.k8s.io
resources:
- issuers
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- cert-manager.io
resources:
- issuers
- certificates
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- ""
resources:
- pods/exec
- pods/log
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- autoscaling
resources:
- horizontalpodautoscalers
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- policy
resources:
- poddisruptionbudgets
- podsecuritypolicies
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- networking.k8s.io
resources:
- networkpolicies
- ingresses
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- rbac.authorization.k8s.io
resources:
- roles
- rolebindings
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- batch
resources:
- jobs
- cronjobs
- deployments
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- ""
- route.openshift.io
resources:
- routes
- routes/custom-host
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- extensions
resources:
- ingresses
- jobs
- deployments
- networkpolicies
- replicasets
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- flink.automation.ibm.com
resources:
- flinkclusters
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- flink.ibm.com
resources:
- flinkdeployments
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- zen.cpd.ibm.com
resources:
- zenextensions
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
CP4BA Workflow Process Service operator
Each Workflow Process Service instance creates one service account for pod use.
ibm-cp4a-wfps-operator-controller-manager
This service account binds to three roles:
- ibm-cp4a-wfps-operator-controller-manager-service-cert
-
This role has the following rules:
- rules: - apiGroups: - operators.coreos.com resourceNames: - ibm-cp4a-wfps-operator.v25.0.0 resources: - operatorconditions verbs: - get - update - patch - ibm-cp4a-wfps-operator.v25.0.0
-
This role has the following rules:
- rules: - apiGroups: - "" resources: - configmaps verbs: - get - list - watch - create - update - patch - delete - apiGroups: - coordination.k8s.io resources: - leases verbs: - get - list - watch - create - update - patch - delete - apiGroups: - "" resources: - events verbs: - create - patch - ibm-cp4a-wfps-operator.v25.0.0-ibm-cp4a-wfps-operator-<ten digit number>
-
This role has the following rules:
- rules: - apiGroups: - "" resources: - configmaps verbs: - get - list - watch - create - update - patch - delete - apiGroups: - coordination.k8s.io resources: - leases verbs: - get - list - watch - create - update - patch - delete - apiGroups: - "" resources: - events verbs: - create - patch
This service account also binds to a cluster role:
- ibm-cp4a-wfps-operator.v25.0.0-<ten digit number>
-
This cluster role has the following rules:
- rules: - apiGroups: - apps resources: - daemonsets - deployments - replicasets - statefulsets verbs: - '*' - apiGroups: - authentication.k8s.io resources: - subjectaccessreviews - tokenreviews verbs: - create - apiGroups: - authorization.k8s.io resources: - subjectaccessreviews verbs: - create - apiGroups: - autoscaling resources: - horizontalpodautoscalers verbs: - create - delete - get - list - patch - update - watch - apiGroups: - autoscaling resources: - horizontalpodautoscalers/finalizers verbs: - update - apiGroups: - autoscaling resources: - horizontalpodautoscalers/status verbs: - get - patch - update - apiGroups: - batch resources: - cronjobs verbs: - '*' - apiGroups: - "" resources: - configmaps - endpoints - events - persistentvolumeclaims - pods - pods/exec - secrets - serviceaccounts - services - services/finalizers verbs: - '*' - apiGroups: - icp4a.ibm.com resources: - icp4aclusters verbs: - '*' - apiGroups: - icp4a.ibm.com resources: - icp4aclusters.icp4a.ibm.com verbs: - '*' - apiGroups: - icp4a.ibm.com resources: - wfpsruntimes verbs: - create - delete - get - list - patch - update - watch - apiGroups: - icp4a.ibm.com resources: - wfpsruntimes/finalizers verbs: - update - apiGroups: - icp4a.ibm.com resources: - wfpsruntimes/status verbs: - get - patch - update - apiGroups: - networking.k8s.io resources: - networkpolicies verbs: - create - delete - apiGroups: - oauth.openshift.io resources: - oauthclients verbs: - '*' - apiGroups: - oidc.security.ibm.com resources: - clients verbs: - '*' - apiGroups: - oidc.security.ibm.com resources: - clients.oidc.security.ibm.com verbs: - '*' - apiGroups: - operator.ibm.com resources: - operandrequests verbs: - create - delete - get - list - patch - update - watch - apiGroups: - operator.ibm.com resources: - operandrequests/finalizers verbs: - update - apiGroups: - operator.ibm.com resources: - operandrequests/status verbs: - get - patch - update - apiGroups: - policy resources: - poddisruptionbudgets - podsecuritypolicies verbs: - '*' - apiGroups: - postgresql.k8s.enterprisedb.io resources: - clusters verbs: - create - delete - get - list - patch - update - watch - apiGroups: - postgresql.k8s.enterprisedb.io resources: - clusters/finalizers verbs: - update - apiGroups: - postgresql.k8s.enterprisedb.io resources: - clusters/status verbs: - get - patch - update - apiGroups: - rbac.authorization.k8s.io resources: - clusterrolebindings - clusterroles verbs: - '*' - apiGroups: - rbac.authorization.k8s.io resources: - rolebindings - roles verbs: - '*' - apiGroups: - route.openshift.io resources: - routes - routes/custom-host verbs: - '*' - apiGroups: - storage.k8s.io resources: - storageclasses verbs: - get - list - watch - apiGroups: - authentication.k8s.io resources: - tokenreviews verbs: - create - apiGroups: - authorization.k8s.io resources: - subjectaccessreviews verbs: - create
CP4BA Process Federation Server operator
Each Process Federation Server instance creates one service account:
ibm-cp4a-pfs-operator-controller-manager
This service account binds to two roles:
- ibm-cp4a-pfs-operator.v25.0.0-<ten digit number>
-
This role has the following rules:
- rules: - verbs: - create - delete - get - list - patch - update - watch apiGroups: - apps resources: - deployments - verbs: - create - delete - get - list - patch - update - watch apiGroups: - apps resources: - replicasets - verbs: - create - delete - get - list - patch - update - watch apiGroups: - apps resources: - statefulsets - verbs: - get - list - verbs: - '*' apiGroups: - batch resources: - jobs - verbs: - create - delete - get - list - patch - update - watch apiGroups: - coordination.k8s.io resources: - leases - verbs: - create - delete - get - list - patch - update - watch apiGroups: - '' resources: - configmaps - verbs: - create - delete - get - list - patch - update - watch apiGroups: - '' resources: - events - verbs: - create - delete - get - list - patch - update - watch apiGroups: - '' resources: - pods - verbs: - create - delete - get - list - patch - update - watch apiGroups: - '' resources: - secrets - verbs: - create - delete - get - list - patch - update - watch apiGroups: - '' resources: - serviceaccounts - verbs: - create - delete - get - list - patch - update - watch apiGroups: - '' resources: - services - verbs: - create - delete - get - list - patch - update - watch apiGroups: - icp4a.ibm.com resources: - icp4aclusters - verbs: - create - delete - get - list - patch - update - watch apiGroups: - icp4a.ibm.com resources: - icp4aclusters.icp4a.ibm.com - verbs: - create - delete - get - list - patch - update - watch apiGroups: - icp4a.ibm.com resources: - processfederationservers - verbs: - update apiGroups: - icp4a.ibm.com resources: - processfederationservers/finalizers - verbs: - get - patch - update apiGroups: - icp4a.ibm.com resources: - processfederationservers/status - verbs: - create - delete - get - list - patch - update - watch apiGroups: - networking.k8s.io resources: - networkpolicies - verbs: - create - delete - get - list - patch - update - watch apiGroups: - oauth.openshift.io resources: - oauthclients - verbs: - create - delete - get - list - patch - update - watch apiGroups: - oidc.security.ibm.com resources: - clients - verbs: - create - delete - get - list - patch - update - watch apiGroups: - oidc.security.ibm.com resources: - clients.oidc.security.ibm.com - verbs: - '*' apiGroups: - policy resources: - poddisruptionbudgets - podsecuritypolicies - verbs: - create - delete - get - list - patch - update - watch apiGroups: - rbac.authorization.k8s.io resources: - rolebindings - verbs: - create - delete - get - list - patch - update - watch apiGroups: - rbac.authorization.k8s.io resources: - roles - verbs: - create - delete - get - list - patch - update - watch apiGroups: - route.openshift.io resources: - routes - verbs: - create - delete - get - list - patch - update - watch apiGroups: - route.openshift.io resources: - routes/custom-host - ibm-cp4a-pfs-operator.v25.0.0
-
This role has the following rules:
- rules: - verbs: - get - update - patch apiGroups: - operators.coreos.com resources: - operatorconditions resourceNames: - ibm-cp4a-pfs-operator.v25.0.0
CP4BA Workflow Runtime operator
The CPBA Workflow Runtime operator creates the following service account:
ibm-workflow-operator-sa
This service account binds to two roles:
- ibm-workflow-operator.v25.0.0
-
This role has the following rules:
rules: - verbs: - get - update - patch apiGroups: - operators.coreos.com resources: - operatorconditions resourceNames: - ibm-workflow-operator.v25.0.0 - ibm-workflow-operator.v25.0.0-ibm-workflow-operator--<ten digit number>
-
This role has the following rules:
rules: - verbs: - get - list - watch - create - update - patch - delete apiGroups: - '' resources: - configmaps - verbs: - get - list - watch - create - update - patch - delete apiGroups: - coordination.k8s.io resources: - leases - verbs: - create - patch apiGroups: - '' resources: - events - ibm-workflow-operator.v25.0.0-<ten digit number>
-
This service account also binds to a cluster role. This cluster role has the following rules:
rules: - verbs: - create - delete - get - list - patch - update - watch apiGroups: - apps resources: - deployments - replicasets - statefulsets - verbs: - '*' apiGroups: - autoscaling resources: - horizontalpodautoscalers - verbs: - '*' apiGroups: - batch resources: - jobs - verbs: - create - delete - get - list - patch - update - watch apiGroups: - coordination.k8s.io resources: - leases - verbs: - create - delete - get - list - patch - update - watch apiGroups: - '' resources: - configmaps - verbs: - create - delete - get - list - patch - update - watch apiGroups: - '' resources: - configmaps - events - persistentvolumeclaims - pods - secrets - serviceaccounts - services - verbs: - create - delete - get - list - patch - update - watch apiGroups: - '' resources: - events - persistentvolumeclaims - pods - secrets - serviceaccounts - services - verbs: - create - delete - get - list - patch - update - watch apiGroups: - elastic.automation.ibm.com resources: - elasticsearches - verbs: - update apiGroups: - elastic.automation.ibm.com resources: - elasticsearches/finalizers - verbs: - get - patch - update apiGroups: - elastic.automation.ibm.com resources: - elasticsearches/status - verbs: - create - delete - get - list - patch - update - watch apiGroups: - elasticsearch.opencontent.ibm.com resources: - elasticsearchclusters - verbs: - update apiGroups: - elasticsearch.opencontent.ibm.com resources: - elasticsearchclusters/finalizers - verbs: - get - patch - update apiGroups: - elasticsearch.opencontent.ibm.com resources: - elasticsearchclusters/status - verbs: - create - delete - get - list - patch - update - watch apiGroups: - ibmevents.ibm.com resources: - kafkas - kafkausers - verbs: - create - delete - get - list - patch - update - watch apiGroups: - icp4a.ibm.com resources: - businessautomationmachinelearnings - verbs: - update apiGroups: - icp4a.ibm.com resources: - businessautomationmachinelearnings/finalizers - verbs: - get - patch - update apiGroups: - icp4a.ibm.com resources: - businessautomationmachinelearnings/status - verbs: - create - delete - get - list - patch - update - watch apiGroups: - icp4a.ibm.com resources: - contents - contents.icp4a.ibm.com - federatedsystems - federatedsystems.icp4a.ibm.com - processfederationservers - processfederationservers.icp4a.ibm.com - verbs: - get apiGroups: - icp4a.ibm.com resources: - contents/status - federatedsystems/status - processfederationservers/status - verbs: - create - delete - get - list - patch - update - watch apiGroups: - icp4a.ibm.com resources: - icp4aclusters - icp4aclusters.icp4a.ibm.com - workflowruntimes - workflowruntimes/status - verbs: - update apiGroups: - icp4a.ibm.com resources: - workflowruntimes/finalizers - verbs: - create - delete - get - list - patch - update - watch apiGroups: - networking.k8s.io resources: - ingresses - networkpolicies - verbs: - create - delete - get - list - patch - update - watch apiGroups: - oauth.openshift.io resources: - oauthclients - verbs: - create - delete - get - list - patch - update - watch apiGroups: - oidc.security.ibm.com resources: - clients - clients.oidc.security.ibm.com - verbs: - '*' apiGroups: - policy resources: - poddisruptionbudgets - podsecuritypolicies - verbs: - create - delete - get - list - patch - update - watch apiGroups: - rbac.authorization.k8s.io resources: - rolebindings - roles - verbs: - create - delete - get - list - patch - update - watch apiGroups: - route.openshift.io resources: - routes - routes/custom-host - verbs: - create - delete - get - list - patch - update - watch apiGroups: - zen.cpd.ibm.com resources: - zenextensions - verbs: - create - delete - get - list - patch - update - watch apiGroups: - zen.cpd.ibm.com resources: - zenextensions/status - verbs: - create - delete - get - list - patch - update - watch apiGroups: - zen.cpd.ibm.com resources: - zenservices
CP4BA Document Processing Engine operator
The CP4BA Document Processing Engine operator deploys the engine for Automation Document Processing.
The CP4BA Document Processing Engine operator creates the following service account:
ibm-cp4a-dpe-operator
This service account binds to two roles:
ibm-dpe-operator.v25.0.0
This role has the following rules:
rules:
- verbs:
- get
- update
- patch
apiGroups:
- operators.coreos.com
resources:
- operatorconditions
resourceNames:
- ibm-dpe-operator.v25.0.0
ibm-dpe-operator.v24.0.0-ibm-cp4a-dpe-operator-<unique-ID>
This role has the following rules:
rules:
- verbs:
- '*'
apiGroups:
- ''
resources:
- pods
- pods/exec
- pods/log
- services
- endpoints
- persistentvolumeclaims
- events
- configmaps
- secrets
- serviceaccounts
- verbs:
- '*'
apiGroups:
- apps
resources:
- deployments
- daemonsets
- replicasets
- statefulsets
- verbs:
- get
- create
apiGroups:
- monitoring.coreos.com
resources:
- servicemonitors
- verbs:
- update
apiGroups:
- apps
resources:
- deployments/finalizers
resourceNames:
- ibm-cp4a-operator
- ibm-cp4a-dpe-operator
- verbs:
- '*'
apiGroups:
- icp4a.ibm.com
- dpe.ibm.com
resources:
- '*'
- verbs:
- '*'
apiGroups:
- autoscaling
resources:
- horizontalpodautoscalers
- verbs:
- '*'
apiGroups:
- policy
resources:
- poddisruptionbudgets
- podsecuritypolicies
- verbs:
- '*'
apiGroups:
- networking.k8s.io
resources:
- networkpolicies
- ingresses
- verbs:
- '*'
apiGroups:
- rbac.authorization.k8s.io
resources:
- roles
- rolebindings
- verbs:
- '*'
apiGroups:
- batch
resources:
- jobs
- cronjobs
- deployments
- verbs:
- '*'
apiGroups:
- ''
- route.openshift.io
resources:
- routes
- routes/custom-host
- verbs:
- '*'
apiGroups:
- extensions
resources:
- ingresses
- jobs
- deployments
- networkpolicies
- replicasets
- verbs:
- '*'
apiGroups:
- core.automation.ibm.com
resources:
- cartridges
- automationuiconfigs
- verbs:
- '*'
apiGroups:
- base.automation.ibm.com
resources:
- cartridgerequirements
- automationbases
- verbs:
- '*'
apiGroups:
- certmanager.k8s.io
resources:
- issuers
- verbs:
- create
- delete
- get
- list
- patch
- update
- watch
apiGroups:
- zen.cpd.ibm.com
resources:
- zenservices
- zenextensions
This service account also binds to a cluster role:
ibm-dpe-operator.v25.0.0-<unique-ID>
This cluster role has the following rules:
rules:
- verbs:
- use
- list
apiGroups:
- security.openshift.io
resources:
- securitycontextconstraints
resourceNames:
- restricted
- verbs:
- '*'
apiGroups:
- icp4a.ibm.com
resources:
- '*'
- verbs:
- '*'
apiGroups:
- extensions
resources:
- podsecuritypolicies
- verbs:
- '*'
apiGroups:
- policy
resources:
- podsecuritypolicies
- verbs:
- get
apiGroups:
- route.openshift.io
resources:
- routes
- verbs:
- list
apiGroups:
- storage.k8s.io
resources:
- storageclasses
- verbs:
- get
- create
- patch
- update
- delete
apiGroups:
- ''
resources:
- configmaps
- secrets
- verbs:
- create
- delete
- get
- list
- patch
- update
- watch
apiGroups:
- operator.ibm.com
resources:
- operandrequests
- verbs:
- get
apiGroups:
- operator.ibm.com
resources:
- operandrequests/status
- verbs:
- create
- delete
- get
- list
- patch
- update
- watch
apiGroups:
- operator.ibm.com
resources:
- commonservices
- verbs:
- create
- delete
- get
- list
- patch
- update
- watch
apiGroups:
- operators.coreos.com
resources:
- subscriptions
- clusterserviceversions
- verbs:
- create
- delete
- get
- list
- patch
- update
- watch
apiGroups:
- db2u.databases.ibm.com
resources:
- db2uclusters
- verbs:
- create
- delete
- get
- list
- patch
- update
- watch
apiGroups:
- db2u.databases.ibm.com/v1
resources:
- db2uclusters
- verbs:
- create
- delete
- get
- list
- patch
- update
- watch
apiGroups:
- db2u.databases.ibm.com/v1.Db2uCluster
resources:
- db2uclusters
- verbs:
- '*'
apiGroups:
- operator.ibm.com
resources:
- businessteamsservices
- verbs:
- list
- get
- delete
apiGroups:
- ''
resources:
- pods
- verbs:
- get
- list
apiGroups:
- apiextensions.k8s.io
resources:
- customresourcedefinitions
- verbs:
- create
- delete
- get
- list
- patch
- update
- watch
apiGroups:
- zen.cpd.ibm.com
resources:
- zenservices
- zenextensions
Automation Decision Services
For the Automation Decision Services operator, 2 roles are created:
ibm-ads-operator.v25.0.0
rules:
- apiGroups:
- operators.coreos.com
resourceNames:
- ibm-ads-operator.v24.0.0
resources:
- operatorconditions
verbs:
- get
- update
- patch
ibm-ads-operator.v25.0.0-ibm-ads-operator-sa-<10 digits>
rules:
- apiGroups:
- ""
resources:
- configmaps
verbs:
- get
- list
- watch
- create
- update
- patch
- delete
- apiGroups:
- coordination.k8s.io
resources:
- leases
verbs:
- get
- list
- watch
- create
- update
- patch
- delete
- apiGroups:
- ""
resources:
- events
verbs:
- create
- patch
- apiGroups:
- icp4a.ibm.com
resources:
- icp4aads
- icp4aautomationdecisionservices
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- icp4a.ibm.com
resources:
- icp4aads/finalizers
- icp4aautomationdecisionservices/finalizers
verbs:
- update
- apiGroups:
- icp4a.ibm.com
resources:
- icp4aads/status
- icp4aautomationdecisionservices/status
verbs:
- get
- patch
- update
For the Automation Decision Services operands, a dedicated role with no permission is created for most of the workloads:
icp4adeploy-ads-noperm-role
rules: null
The ltpa job has a dedicated role that is used to create its secret:
icp4adeploy-ads-ltpa-role
rules:
- apiGroups:
- ""
resources:
- secrets
verbs:
- get
- update
- create
- patch
- delete
Most pods are using a dedicated role that only grants the permission to know other pods:
icp4adeploy-ads-get-ready-pods-role
rules:
- apiGroups:
- ""
resources:
- pods
verbs:
- get
- watch
- list
Automation Document Processing
By default, the Content Analyzer component of Automation Document Processing uses the following service account.
<cr-name>-aca-service-account
This service account binds to the role <cr-name>-aca-role that has the following rules:
rules:
- verbs:
- get
- watch
- list
apiGroups:
- ''
resources:
- pods
- verbs:
- get
- watch
- list
apiGroups:
- batch
resources:
- jobs
- verbs:
- get
- update
- create
- patch
- delete
apiGroups:
- ''
resources:
- secrets
- endpoints
- verbs:
- get
- watch
- list
- create
- update
- patch
- delete
apiGroups:
- ''
resources:
- configmaps
A custom service account can be defined for the Content Analyzer component in the deployment CR
with the ca_configuration.global.service_account parameter. For reference, see
IBM Automation Document Processing parameters.
Business Automation Application
Each Business Automation Application engine instance creates only one service account for pod
use, based on the name of the custom resource (cr) and the instance name. For example, the playback
AE instance name is pbk and the default template that is used for a production
engine instance name is workspace:
<cr-name>-<ae-instance-name>-aae-ae-sa
No role is created for application engine. No Kubernetes access is needed.
Business Automation Workflow
The Business Automation Workflow server creates the following service account:
<cr-name>-<workflow instance name>-baw-server-sa
This service account binds to a role that has the following rules:
- rules:
- verbs:
- update
- get
- create
- delete
- patch
apiGroups:
- ''
resources:
- secrets
- verbs:
- wait
- get
- list
- watch
apiGroups:
- batch
resources:
- jobs
Business Automation Workstreams
The Business Automation Workstreams server creates the following service account:
<cr-name>-<workflow instance name>-baw-server-sa
This service account binds to a role that has the following rules:
- rules:
- verbs:
- update
- get
- create
- delete
- patch
apiGroups:
- ''
resources:
- secrets
- verbs:
- wait
- get
- list
- watch
apiGroups:
- batch
resources:
- jobs
FileNet Content Manager
This pattern uses the following service account:
ibm-cpe-watcher and <cr-name>-fncm-service-account
Service account ibm-cpe-watcher binds to the ibm-cpe-watcher role, which has the following
rules:
- rules:
- apiGroups:
- ""
resources:
- pods
verbs:
- get
- list
- apiGroups:
- ""
resources:
- configmaps
verbs:
- get
- list
- patch
- update
- delete
- apiGroups:
- zen.cpd.ibm.com
resources:
- zenservices
- zenextensions
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- icp4a.ibm.com
resources:
- '*'
verbs:
- get
- list
Service account <cr-name>-fncm-service-account binds to <cr-name>-fncm-role, which has the following rules:
rules:
- apiGroups:
- ""
resources:
- pods
verbs:
- get
- watch
- list
- apiGroups:
- batch
resources:
- jobs
verbs:
- get
- watch
- list
- apiGroups:
- ""
resources:
- secrets
verbs:
- get
- update
- create
- patch
- delete
- apiGroups:
- ""
resources:
- configmaps
verbs:
- get
- watch
- list
- create
- update
- patch
- delete
Operational Decision Manager
Operational Decision Manager (ODM) is using a single service account. The name is based on the name of the custom resource (cr):
<cr-name>-ibm-odm-prod-service-account
No role is created for ODM. No Kubernetes access is needed.
Process Federation Server
The Process Federation Server service account is named:
bs-pd-fvt-2301-pfs-service-account
No role binds to this service account.
Workflow Process Service
Each Workflow Process Service instance creates only one service account for pod use. The name is based on the name of the custom resource (cr):
<cr-name>-sa
No role is created for the Workflow Process Service instance. No Kubernetes access is needed.
Business Automation Navigator
Business Automation Navigator uses the following service account:
ibm-ban-watcher and <cr-name>-fncm-service-account
Service account ibm-ban-watcher binds to the ibm-ban-watcher role, which has the following
rules:
- rules:
- apiGroups:
- ""
resources:
- pods
verbs:
- get
- list
- apiGroups:
- ""
resources:
- configmaps
verbs:
- get
- list
- patch
- update
- delete
- apiGroups:
- zen.cpd.ibm.com
resources:
- zenservices
- zenextensions
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- icp4a.ibm.com
resources:
- '*'
verbs:
- get
- list
Service account <cr-name>-fncm-service-account binds to <cr-name>-fncm-role, which already documented in FileNet Content Manager section.
Business Automation Studio
Business Automation Studio creates two service accounts for pods to use, based on the name of the custom resource (cr):
<cr-name>-bastudio-sa
<cr-name>-bastudio-int
The int service account is used only by the lightweight third-party
authentication (LTPA) job. It binds the -bastudio-int role to run the following
operations on secrets:
resources:
- secrets
verbs:
- get
- create
- update
- delete
- patch
The <cr-name>-bastudio-int role is used by the Business Automation Studio
pod. It is not bound to any role or cluster role and does not require additional access.
Business Automation Insights
Business insights Engine uses the service account
<cr-name>-insights-engine-sa and the binding to role
<cr-name>-insights-engine-role. It has the following permissions:
rules:
- apiGroups:
- ""
resources:
- pods
verbs:
- get
- watch
- list
- apiGroups:
- batch
resources:
- jobs
verbs:
- get
- watch
- list
- apiGroups:
- ""
resources:
- secrets
verbs:
- get
- update
- create
- patch
- delete
- apiGroups:
- ""
resources:
- configmaps
verbs:
- get
- watch
- list
- create
- update
- patch
- delete
Machine Learning
The Machine Learning server creates the following service account:
ibm-mls-default-sa
This service account binds to a role that has the following rules:
- rules:
- verbs:
- update
- get
- create
- delete
- patch
apiGroups:
- ''
resources:
- secrets