You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/openshift/confidential-containers-deploy.md
+15-15Lines changed: 15 additions & 15 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,15 +6,15 @@ ms.author: johnmarc
6
6
ms.service: azure-redhat-openshift
7
7
keywords: confidential containers, aro, deploy, openshift, red hat
8
8
ms.topic: how-to
9
-
ms.date: 10/24/2024
9
+
ms.date: 11/04/2024
10
10
ms.custom: template-how-to
11
11
---
12
12
13
13
# Deploy Confidential Containers in an Azure Red Hat OpenShift (ARO) cluster
14
14
15
15
This article describes the steps required to deploy Confidential Containers for an ARO cluster. This process involves two main parts and multiple steps:
16
16
17
-
First, you'll deploy OpenShift Sandboxed Containers, which involves the following steps:
17
+
First, deploy OpenShift Sandboxed Containers, including the following steps:
18
18
19
19
1. Install the OpenShift Sandboxed Containers Operator.
20
20
@@ -24,7 +24,7 @@ First, you'll deploy OpenShift Sandboxed Containers, which involves the followin
24
24
25
25
1. Create the Azure secret.
26
26
27
-
After deploying OpenShift Sandboxed Containers, you'll deploy Confidential Containers. This involves the following steps:
27
+
After deploying OpenShift Sandboxed Containers, deploy Confidential Containers. This involves the following steps:
28
28
29
29
1. Install the Trustee Operator.
30
30
@@ -143,19 +143,19 @@ The OpenShift sandboxed containers operator can be installed through the CLI or
143
143
144
144
1. In the **Filter by keyword** field, type OpenShift sandboxed containers.
145
145
146
-
1. Select the **OpenShift sandboxed containers Operator** tile and click **Install**.
146
+
1. Select the **OpenShift sandboxed containers Operator** tile and select **Install**.
147
147
148
148
1. On the **Install Operator** page, select **stable** from the list of available **Update Channel** options.
149
149
150
-
1. Verify that **Operator recommended Namespace** is selected for **Installed Namespace**. This installs the Operator in the mandatory `openshift-sandboxed-containers-operator` namespace. If this namespace does not yet exist, it's automatically created.
150
+
1. Verify that **Operator recommended Namespace** is selected for **Installed Namespace**. This installs the Operator in the mandatory `openshift-sandboxed-containers-operator` namespace. If this namespace doesn't yet exist, it's automatically created.
151
151
152
152
> [!NOTE]
153
153
> Attempting to install the OpenShift sandboxed containers Operator in a namespace other than openshift-sandboxed-containers-operator causes the installation to fail.
154
154
>
155
155
156
156
1. Verify that **Automatic** is selected for **Approval Strategy**. **Automatic** is the default value, and enables automatic updates to OpenShift sandboxed containers when a new z-stream release is available.
157
157
158
-
1. Click **Install**.
158
+
1. Select **Install**.
159
159
160
160
1. Navigate to **Operators → Installed Operators** to verify that the Operator is installed.
161
161
@@ -175,7 +175,7 @@ By default, the OpenShift sandboxed containers operator creates the secret based
1. Generate the RBAC content by running the following command:
178
+
1. Generate the role-based access control (RBAC) content by running the following command:
179
179
180
180
```
181
181
$ az ad sp create-for-rbac --role Contributor --scopes /subscriptions/$AZURE_SUBSCRIPTION_ID \
@@ -276,7 +276,7 @@ By default, the OpenShift sandboxed containers operator creates the secret based
276
276
DISABLECVM: "true"
277
277
```
278
278
**Notes:**
279
-
- `AZURE_INSTANCE_SIZE` is the default if an instance size is not defined in the workload.
279
+
- `AZURE_INSTANCE_SIZE` is the default if an instance size isn't defined in the workload.
280
280
- `AZURE_INSTANCE_SIZES` lists all of the instance sizes you can specify when creating the pod. This allows you to define smaller instance sizes for workloads that need less memory and fewer CPUs or larger instance sizes for larger workloads.
281
281
- Specify the `AZURE_SUBNET_ID` value that you retrieved.
282
282
- Specify the `AZURE_NSG_ID` value that you retrieved.
@@ -484,7 +484,7 @@ Create a secure route with edge TLS termination for Trustee. External ingress tr
484
484
```
485
485
486
486
**Notes:**
487
-
- `AZURE_INSTANCE_SIZE` is the default if an instance size is not defined in the workload.
487
+
- `AZURE_INSTANCE_SIZE` is the default if an instance size isn't defined in the workload.
488
488
- `AZURE_INSTANCE_SIZES` lists all of the instance sizes you can specify when creating the pod. This allows you to define smaller instance sizes for workloads that need less memory and fewer CPUs or larger instance sizes for larger workloads.
489
489
- Specify the `AZURE_SUBNET_ID` value that you retrieved.
490
490
- Specify the `AZURE_NSG_ID` value that you retrieved.
@@ -631,7 +631,7 @@ You can configure the following attestation policy settings:
631
631
632
632
You can configure reference values for the Reference Value Provider Service (RVPS) by specifying the trusted digests of your hardware platform.
633
633
634
-
The client collects measurements from the running software, the Trusted Execution Environment (TEE) hardware and firmware and it submits a quote with the claims to the Attestation Server. These measurements must match the trusted digests registered to the Trustee. This process ensures that the confidential VM (CVM) is running the expected software stack and has not been tampered with.
634
+
The client collects measurements from the running software, the Trusted Execution Environment (TEE) hardware and firmware and it submits a quote with the claims to the Attestation Server. These measurements must match the trusted digests registered to the Trustee. This process ensures that the confidential VM (CVM) is running the expected software stack and hasn't been tampered with.
635
635
636
636
**Secrets for clients**
637
637
@@ -641,7 +641,7 @@ You must create one or more secrets to share with attested clients.
641
641
642
642
You must configure a policy for the Trustee policy engine to determine which resources to access.
643
643
644
-
Do not confuse the Trustee policy engine with the Attestation Service policy engine, which determines the validity of TEE evidence.
644
+
Don't confuse the Trustee policy engine with the Attestation Service policy engine, which determines the validity of TEE evidence.
645
645
646
646
**Attestation policy**
647
647
@@ -701,7 +701,7 @@ If your TEE is Intel Trust Domain Extensions (TDX), you must configure the Provi
701
701
**Notes:**
702
702
703
703
- The name of the resource policy, `policy.rego`, must match the resource policy defined in the Trustee config map.
704
-
- The resource package policy follows the Open Policy Agent specification. This example allows the retrieval of all resources when the TEE is not the sample attester.
704
+
- The resource package policy follows the Open Policy Agent specification. This example allows the retrieval of all resources when the TEE isn't the sample attester.
705
705
706
706
1. Create the resource policy config map by running the following command:
707
707
@@ -865,11 +865,11 @@ You must create the KbsConfig custom resource to launch Trustee. Then, you check
865
865
866
866
You can verify the attestation process by creating a test pod and retrieving its secret.
867
867
868
-
Important: This procedure is an example to verify that attestation is working. Do not write sensitive data to standard I/O because the data can be captured by using a memory dump. Only data written to memory is encrypted.
868
+
Important: This procedure is an example to verify that attestation is working. Don't write sensitive data to standard I/O because the data can be captured by using a memory dump. Only data written to memory is encrypted.
869
869
870
-
By default, an agent side policy embedded in the pod VM image disables the exec and log APIs for a Confidential Containers pod. This policy ensures that sensitive data is not written to standard I/O.
870
+
By default, an agent side policy embedded in the pod VM image disables the exec and log APIs for a Confidential Containers pod. This policy ensures that sensitive data isn't written to standard I/O.
871
871
872
-
In a test scenario, you can override the restriction at runtime by adding a policy annotation to the pod. For Technology Preview, runtime policy annotations are not verified by remote attestation.
872
+
In a test scenario, you can override the restriction at runtime by adding a policy annotation to the pod. For Technology Preview, runtime policy annotations aren't verified by remote attestation.
Copy file name to clipboardExpand all lines: articles/openshift/confidential-containers-overview.md
+9-9Lines changed: 9 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,13 +5,13 @@ author: johnmarco
5
5
ms.author: johnmarc
6
6
ms.service: azure-redhat-openshift
7
7
ms.topic: conceptual
8
-
ms.date: 10/24/2024
8
+
ms.date: 11/04/2024
9
9
---
10
10
# Confidential Containers with Azure Red Hat OpenShift
11
11
12
-
Confidential Containers offer a robust solution to protect sensitive data within cloud environments. By leveraging hardware-based trusted execution environments (TEEs), Confidential Containers provide a secure enclave within the host system, isolating applications and their data from potential threats. This isolation ensures that even if the host system is compromised, the confidential data remains protected.
12
+
Confidential Containers offer a robust solution to protect sensitive data within cloud environments. By using hardware-based trusted execution environments (TEEs), Confidential Containers provide a secure enclave within the host system, isolating applications and their data from potential threats. This isolation ensures that even if the host system is compromised, the confidential data remains protected.
13
13
14
-
This articles describes the benefits of using Confidential Containers to safeguard sensitive data and explains how Confidential Containers function within Azure Red Hat OpenShift.
14
+
This article describes the benefits of using Confidential Containers to safeguard sensitive data and explains how Confidential Containers function within Azure Red Hat OpenShift.
15
15
16
16
17
17
## Benefits of Using Confidential Containers
@@ -30,7 +30,7 @@ Confidential Containers offer several key benefits:
30
30
31
31
## Typical use cases
32
32
33
-
The table below describes the most common use cases for deploying Confidential Containers.
33
+
The following table describes the most common use cases for deploying Confidential Containers.
34
34
35
35
|Use case |Industry |Example |
36
36
|---------|---------|---------|
@@ -42,18 +42,18 @@ The table below describes the most common use cases for deploying Confidential C
42
42
43
43
Confidential Containers is a feature of Red Hat OpenShift sandboxed containers, which provide an isolated environment for running containerized applications. At the core of Confidential Containers lies the Confidential Virtual Machine (CVM). This specialized virtual machine, operating within a Trusted Execution Environment (TEE), establishes a secure enclave for applications and their associated data. TEEs, hardware-based isolated environments fortified with enhanced security features, ensure that even if the host system is compromised, the data residing within the CVM remains protected.
44
44
45
-
Azure Red Hat OpenShift serves as the orchestrator, overseeing the sandboxing of workloads (pods) through the utilization of virtual machines. When employing CVMs, Azure Red Hat OpenShift empowers Confidential Container capabilities for your workloads. Upon creating a Confidential Containers workload, Azure Red Hat OpenShift deploys it within a CVM executing within the TEE, thereby providing a secure and isolated environment for your sensitive data.
45
+
Azure Red Hat OpenShift serves as the orchestrator, overseeing the sandboxing of workloads (pods) through the utilization of virtual machines. When employing CVMs, Azure Red Hat OpenShift empowers Confidential Container capabilities for your workloads. Once a Confidential Containers workload is created, Azure Red Hat OpenShift deploys it within a CVM executing within the TEE, providing a secure and isolated environment for your sensitive data.
46
46
47
47
:::image type="content" source="media/confidential-containers-overview/confidential-containers-arch.png" alt-text="Architecture diagram of ARC confidential containers":::
48
48
49
-
The diagram above shows the three main steps for using Confidential Containers on an ARO cluster:
49
+
The diagram shows the three main steps for using Confidential Containers on an ARO cluster:
50
50
1. The OpenShift Sandboxed Containers Operator is deployed on the ARO cluster.
51
51
1. Kata Runtime container on an ARO worker node uses the cloud-api-adapter to create a peer pod on a confidential VM.
52
52
1. The remote attestation agent on the peer pod initiates the attestation of the container image before the kata-agent deploys it, ensuring the integrity of the image.
53
53
54
54
### Attestation
55
55
56
-
Attestation constitutes a fundamental component of Confidential Containers, particularly within the context of zero-trust security. Prior to deploying a workload as a Confidential Containers workload, it is imperative to verify the trustworthiness of the TEE where the workload will be executed. Attestation ensures that the TEE is indeed secure and possesses the capability to safeguard your confidential data.
56
+
Attestation constitutes a fundamental component of Confidential Containers, particularly within the context of zero-trust security. Prior to deploying a workload as a Confidential Containers workload, it's imperative to verify the trustworthiness of the TEE where the workload is executed. Attestation ensures that the TEE is indeed secure and possesses the capability to safeguard your confidential data.
57
57
58
58
### The Trustee Project
59
59
@@ -70,8 +70,8 @@ The confidential compute attestation Operator, an integral component of the Azur
70
70
71
71
### A Unified Perspective
72
72
73
-
A typical Confidential Containers deployment involves Azure Red Hat OpenShift working in conjunction with the confidential compute attestation operator deployed in a separate, trusted environment. The workload is executed within a CVM operating inside a TEE, benefiting from the encrypted memory and integrity guarantees provided by the TEE. Trustee agents residing within the CVM perform attestation and acquire requisite secrets, thereby safeguarding the security and confidentiality of your data.
73
+
A typical Confidential Containers deployment involves Azure Red Hat OpenShift working in conjunction with the confidential compute attestation operator deployed in a separate, trusted environment. The workload is executed within a CVM operating inside a TEE, benefiting from the encrypted memory and integrity guarantees provided by the TEE. Trustee agents residing within the CVM perform attestation and acquire requisite secrets, safeguarding the security and confidentiality of your data.
74
74
75
75
## Next steps
76
76
77
-
Now that you've considered the benefits and various use cases for Confidential Containers, check out [Deploy confidential containers in an Azure Red Hat OpenShift (ARO) cluster](confidential-containers-deploy.md).
77
+
Now that you know the benefits and various use cases for Confidential Containers, check out [Deploy confidential containers in an Azure Red Hat OpenShift (ARO) cluster](confidential-containers-deploy.md).
0 commit comments