Enclave

Definition

An enclave is a secure, isolated computing environment designed to protect sensitive data and code from unauthorized access, even if the host system is compromised. Enclaves leverage hardware-based security features to create a trusted execution environment (TEE) that ensures confidentiality and integrity. They are commonly used in cloud computing and secure data processing to safeguard critical operations and information.

Secure Settings Example

# Example of a Kubernetes PodSecurityContext for an enclave
apiVersion: v1
kind: Pod
metadata:
  name: secure-enclave-pod
spec:
  securityContext:
    runAsUser: 1000
    runAsGroup: 3000
    fsGroup: 2000
    seccompProfile:
      type: RuntimeDefault
  containers:
  - name: enclave-container
    image: secure-enclave-image:latest
    securityContext:
      capabilities:
        drop: ["ALL"]
      readOnlyRootFilesystem: true
      allowPrivilegeEscalation: false

Insecure Settings Example

# Example of an insecure Kubernetes PodSecurityContext
apiVersion: v1
kind: Pod
metadata:
  name: insecure-enclave-pod
spec:
  securityContext:
    runAsUser: 0  # Running as root user
    runAsGroup: 0
    fsGroup: 0
    seccompProfile:
      type: Unconfined  # No seccomp profile applied
  containers:
  - name: enclave-container
    image: insecure-enclave-image:latest
    securityContext:
      capabilities:
        add: ["ALL"]  # Adding all capabilities
      readOnlyRootFilesystem: false
      allowPrivilegeEscalation: true