Security#
Security configuration for AIM Engine deployments.
Pod Security#
The operator runs with restrictive security defaults:
Setting |
Value |
|---|---|
|
|
|
|
|
|
|
|
|
|
These are configured in the Helm chart and can be adjusted via manager.podSecurityContext and manager.securityContext values.
RBAC#
Operator Permissions#
The operator runs with a ClusterRole (aim-engine-manager-role) that grants:
Full access to all AIM CRDs (
aim.eai.amd.com)Read access to nodes, namespaces, pods, secrets
Manage PVCs, jobs, and events
Create/manage KServe InferenceServices
Create/manage Gateway API HTTPRoutes
Read storage classes
Helper Roles#
When rbacHelpers.enable is true (default), the chart creates admin/editor/viewer ClusterRoles for each CRD:
Role Pattern |
Permissions |
|---|---|
|
Full access including status |
|
Create, update, delete |
|
Read-only |
Available for: aimservice, aimmodel, aimclustermodel, aimartifact, aimtemplatecache, aimservicetemplate, aimclusterservicetemplate, aimruntimeconfig, aimclusterruntimeconfig.
Example: Team RBAC#
Grant a team editor access to services and viewer access to cluster resources:
# Edit services in their namespace
kubectl create rolebinding team-a-services \
--clusterrole=aimservice-editor \
--group=team-a \
--namespace=ml-team-a
# View cluster models (read-only)
kubectl create clusterrolebinding team-a-models \
--clusterrole=aimclustermodel-viewer \
--group=team-a
TLS#
Metrics Endpoint#
The metrics endpoint serves over HTTPS by default (port 8443). Provide certificates via:
cert-manager — Set
certManager.enable: truein Helm valuesManual — Mount certificates and set
--metrics-cert-path
To disable TLS for metrics (not recommended for production):
--set 'manager.args={--leader-elect,--metrics-secure=false}'
Secrets Management#
Sensitive credentials (registry tokens, S3 keys) are managed through Kubernetes Secrets referenced in runtime configurations:
spec:
env:
- name: HF_TOKEN
valueFrom:
secretKeyRef:
name: hf-credentials
key: token
The operator reads these references but never stores credential values in CRD status or logs.
Next Steps#
Multi-Tenancy — Team isolation patterns
Installation Reference — Helm security values
Private Registries — Credential configuration