關於安全 TLS 憑證部署

此解決方案為需要在 Oracle Cloud Infrastructure Vault 的金鑰不可變性否則會成為封鎖器之環境中,使用可信任 TLS 憑證的組織提供安全、彈性且合規的方法。 它有效地銜接 OCI 原生安全模型與真實世界整合需求之間的差距,涵蓋多個 Oracle 和非 Oracle 服務。

在 Web 伺服器或應用程式伺服器上實作安全 TLS 通訊時,必須存取下列元件:

  • TLS 憑證
  • 根與中間 (憑證鍊)
  • 對應的私密金鑰

Oracle Cloud Infrastructure (OCI) 提供原生憑證管理服務,可建立及生命週期管理要在 OCI 管理的服務內使用的憑證。在此模型中,私密金鑰會安全地儲存在 OCI Vault 中,一般使用者或外部系統無法存取。雖然這增強了安全性,但在需要完整憑證和金鑰控制的情況下 (例如部署到外部應用程式伺服器或混合環境),仍會限制其彈性。對於需要直接存取憑證和私密金鑰的系統,嘗試使用來自 OCI Certificates 的憑證授權機構 (CA) 時會發生挑戰。

與下列服務整合時,這會變得特別有問題:

  • Oracle Analytics Cloud
  • Oracle Integration
  • OCI Compute 上代管的 Web 伺服器
  • 內部部署或邊緣應用程式

這些平台通常需要對 TLS 憑證的完整控制 (包括存取私密金鑰的能力),才能支援 SSL/TLS 階段作業的安全通訊和終止。

本解決方案手冊將介紹跨產品解決方案,讓 OCI CA 用於混合式環境,藉此解決此限制:

  • 您可以在 OCI 內部產生私密金鑰和憑證簽署要求 (CSR)。
  • CSR 接著由 OCI 憑證 CA 簽署,在 OCI 生態系統中保持信任。
  • 產生的簽署憑證會與本機產生的私密金鑰結合,並部署至任何需要簽署憑證的服務 (無論是在 OCI、內部部署還是另一個雲端)。

下圖說明此流程。



此方法適用於:

  • 具備符合成本效益之自行簽署憑證的非生產環境設定。
  • 需要同時控制憑證和私密金鑰的環境 (例如自訂伺服器或內部部署整合)。
  • OCI 管理的憑證 (隱藏私密金鑰) 與外部系統不相容的情況。

Before You Begin - 開始之前

開始之前,您需要:

  • OCI Vault ,用於安全地儲存 OCI 中設定的私密金鑰。
  • OCI Certificates 憑證授權機構 (CA) 在 OCI 中設定並完整運作。
  • 存取本機機器上的 OpenSSL 程式庫,以便產生您的私密金鑰。

關於必要服務與角色

此解決方案需要下列服務與角色:

  • Oracle Cloud Infrastructure

這是服務所需的角色。

服務名稱:角色 必要項目 ...
Oracle Cloud Infrastructure :管理員 管理區間中的物件,以及讀取或管理憑證、儲存桶、保存庫和金鑰 (請參閱下方)。

您可以為憑證授權機構管理員使用簡單原則,或設定管理員和動態群組原則以區隔角色和職責,並依區間限制角色和職責。舉例而言:

### Simple Policy for Tenant Administrators
```
Allow group CertificateAuthorityAdmins to manage certificate-authority-family in tenancy
Allow group CertificateAuthorityAdmins to manage leaf-certificate-family in tenancy
Allow group CertificateAuthorityAdmins to read vaults in tenancy
Allow group CertificateAuthorityAdmins to read keys in tenancy
Allow group CertificateAuthorityAdmins to use key-delegate in tenancy
```

或:

### Policy for a Dynamic Group
```
Allow dynamic-group DynamicGroup to use keys in compartment DEF
Allow dynamic-group DynamicGroup to manage objects in compartment XYZ
```
### Policy for Compartment Administrators
```
Allow group CertificateAuthorityAdmins to manage certificate-authority-family in compartment ABC
Allow group CertificateAuthorityAdmins to read keys in compartment DEF
Allow group CertificateAuthorityAdmins to use key-delegate in compartment DEF
Allow group CertificateAuthorityAdmins to read buckets in compartment XYZ
Allow group CertificateAuthorityAdmins to read vaults in compartment DEF
```

請參閱 Oracle 產品、解決方案和服務,以取得您需要的內容。