使用 OCI VaultOracle Integration 中導入訊息層級加密

訊息層級加密 (MLE) 是一種安全技術,用來保護訊息在傳輸時的機密性和完整性。它涉及使用加密演算法來混淆訊息的內容,因此只有具有解密金鑰的預期收件人才能讀取訊息。

Rest API 以架構為無狀態,代表伺服器未維護階段作業,因此沒有用戶端的相關資訊。在要求中,用戶端需要傳送所有資訊,以允許伺服器回應。使用 Rest API 和安全性時,重點在於驗證、授權和機密性。

對於認證和授權,有不同的協定和最佳做法會從 API 金鑰、基本認證、JWT 權杖變更為 oAuth。為求機密性,您可以啟用「傳輸層次安全 (TLS)」,這是透過加密流量來保護網路通訊的程序。這就是大多數 Rest API 強制執行 HTTPS 而非簡單的 HTTP 的原因。所有這些產品都有自己的專業和良性,並由現成的 Oracle Integration 支援。

雖然網路層級安全性符合大多數時間的需求,但有時需要強制執行訊息或有效負載層級加密 (例如,包含機密資訊時,例如:個人識別資訊 [PII]、信用卡卡號、銀行帳戶詳細資料、醫療記錄等等)。這就是許多付款閘道 (Visa、MasterCard、政府機構) 針對包含機密資料的 Rest API 強制執行 MLE 的原因。

Oracle Integration 提供立即可用的功能,以符合認證、授權和 TLS。使用 OCI Vault 可以實現 MLE。

架構

此參考架構示範如何在 Oracle Integration 中使用 OCI Vault 來實現 MLE。

OCI Vault 是一種加密管理服務,用於儲存和管理加密金鑰和加密密碼,以安全地存取資源。它提供 API 來允許管理金鑰,以及使用這些金鑰簽署、加密和解密資料。

使用加密時,有兩種保護資料的基本系統類型。

  • 對稱式加密使用相同的 (私密) 金鑰來進行加密和解密。寄件者與接收者必須具有相同的秘密金鑰,用來加密與解密資料。這表示如果有人攔截該金鑰,他們就可以解密資料。
  • 另一方面,非對稱式加密使用兩個不同的金鑰:公用金鑰和私密金鑰。寄件者會使用收件者的公開金鑰來加密資料,而收件者則使用私密金鑰來解密資料。私密金鑰會保密且不會共用,因此比對稱式加密更安全。

對稱式加密具有速度的優點,但由於對稱式加密在加密和解密中使用相同的金鑰,因此較不安全。不對稱的加密,雖然較慢,但因為用於解密的私密金鑰永遠都不會共用,而且只能由收件者存取。

OCI Vault 支援這些金鑰形狀演算法。

金鑰型態演算法 描述
進階加密標準 (Advanced Encryption Standard,AES) AES 金鑰是對稱式金鑰,可用來加密資料。
Rivest-Shamir-Adleman (RSA) RSA 金鑰是非對稱金鑰 (亦稱為金鑰組),由公開金鑰和私密金鑰組成,可用來加密傳輸中的資料、簽署資料,以及驗證已簽署資料的完整性。
橢圓曲線加密數位簽章演算法 (ECDSA) ECDSA 金鑰是非對稱金鑰,可用來簽署資料並驗證已簽署資料的完整性。

有時,您需要同時使用對稱和非對稱。例如,客戶與您共用其 RSA 公開金鑰;您可以產生並使用 AES 私密金鑰來加密資料;然後使用客戶在有效負載中傳送的 RSA 公開金鑰來加密私密金鑰。由於客戶並未共用其 RSA 私密金鑰,因此只有他們才能解密資料,首先是解密 AES 金鑰,然後使用它來解密有效負載。這會在您的有效負載大小大於 RSA 金鑰可加密時完成。

OCI Vault 可讓您匯入或建立自己的主要加密金鑰。使用匯入的金鑰資料時,您仍需負責金鑰資料,同時允許 OCI Vault 使用其副本。如需有關匯入金鑰的資訊,請參閱「瀏覽更多」。

OCI Vault 提供許多可供 Oracle Integration 使用的 API。請參閱 〈探索更多〉 ,以取得 Vault 金鑰管理 API。以下是訊息層級加密案例中常見的部分 API。

API 描述
加密 使用要求中所提供的加密詳細資訊加密資料。
解密 使用要求中所提供的解密詳細資訊解密資料。
Sign 使用公開 - 私密金鑰組 (亦稱為非對稱金鑰) 的私密金鑰建立訊息或訊息摘要的數位簽章。
驗證 使用簽署資料所使用之相同非對稱式金鑰的公開金鑰,驗證簽署作業所產生的數位簽章。如果您想要驗證服務以外的數位簽章,可以使用非對稱金鑰的公開金鑰進行驗證。

Oracle Integration 中工作時,您必須先加密有效負載,才能將要求傳送至 Rest API,您可以使用 OCI Vault 。如果您使用對稱式加密,可以接收 AES 私密金鑰,將其上傳至 OCI Vault ,並使用 OCI Vault API 將資料加密,並將此加密資料傳送至 Rest API。如果您需要非對稱加密,可以接收 RSA 公開金鑰、在 OCI Vault 上上傳,並使用 OCI Vault API 將資料加密,並將此加密資料傳送至 Rest API。同樣地,如果您想要在 Oracle Integration 中強制實行 Rest API 加密有效負載,您可以建立金鑰、與從屬端共用,以及使用 OCI Vault API 來解密資料並進行驗證。此外,當需要同時使用非對稱加密和對稱加密時,也可以結合這兩個金鑰。

下圖說明此參考架構。



oci-vault 架構 -oracle.zip

架構具有下列元件:

  • Oracle Integration

    Oracle Integration 提供一組全方位的工具和服務,協助組織整合企業內部部署和雲端中的各種應用系統、服務和資料來源。Oracle Integration 提供一系列功能,包括用於與各種常用應用程式 (例如 Oracle Fusion、Salesforce、SAP、Workday 等) 整合的預先建置連接器,以及用於與其他應用程式和服務整合的自訂連接器。它也提供直觀的視覺介面,用於設計、測試和部署整合,讓使用者無需編寫程式碼技能,即可輕鬆建立複雜的整合工作流程。

  • Oracle Cloud Infrastructure Vault

    OCI Vault 是由 Oracle Cloud Infrastructure (OCI) 提供的安全且可擴展的金鑰管理服務。它提供一個集中位置,用於管理用於保護 OCI 資源和應用程式的加密金鑰和加密密碼。OCI Vault 提供一系列功能,包括金鑰產生和儲存、金鑰安全分配、加密和解密。它可讓使用者管理自己的金鑰或使用 OCI 管理的金鑰。使用者也可以定期輪換金鑰,以確保最高的安全性。

    OCI Vault 還提供豐富的 Rest API 集以管理保存庫和金鑰。

注意事項

實作此參考架構時,請考量以下幾點。

  • 安全

    使用 Oracle Cloud Infrastructure Identity and Access Management (IAM) 原則控制可存取您雲端資源的人員,以及可執行的作業。將 IAM 使用者和群組的最低權限存取權指定給資源類型。

  • 服務限額

    考量拓樸中所使用 OCI 服務的限制和配額。查看「瀏覽更多」。

確認

認證者

  • Harris Qureshi

提供者

  • John Sulyok