OpenAI
此頁面由機器翻譯。查看原文英文文章

OpenAI Enterprise Key Management (EKM) 概覽

了解 EKM 的運作方式、支援哪些供應商,以及如何開始使用

更新日期:6 days ago

概覽

企業金鑰管理(EKM)讓你使用由自己的外部金鑰管理系統(KMS)管理的金鑰,加密儲存於 OpenAI 的客戶內容;ChatGPT Enterprise 及 API 均支援此功能。

OpenAI 支援透過 AWS KMSGoogle CloudGCP)及 Azure Key Vault 的外部帳戶,使用自攜金鑰(BYOK)加密。

目前,只有設有指定 OpenAI 客戶代表的 Enterprise 及 Edu 工作區可實施 EKM。

OpenAI EKM 加密如何運作

頂層流程

  1. 我們會為你的雲端供應商產生一個資料加密金鑰(DEK)

  2. 你的雲端 KMS 會管理一個主金鑰加密金鑰(KEK),可儲存在你的雲端內或外部。實作方式由你決定。

  3. 我們會要求你的雲端加密 DEK,以取得已加密 DEK(eDEK)。如果你的 KEK 儲存在外部,你的雲端只會額外跳轉到外部儲存位置,這一步對 OpenAI 不透明。

加密

加密時,你的資料會使用 DEK 加密,而 eDEK 則會作為中繼資料儲存於檔案中。

EKM encryption flow where OpenAI requests a DEK from your KMS, encrypts data, and stores encrypted data with eDEK

解密

解密時,我們會要求你的雲端 KMS 將 eDEK 解密為 DEK,然後我們會使用 DEK 解密資料。

EKM decryption flow where OpenAI requests a DEK from your KMS to decrypt encrypted data for download

主要術語

  • Data Encryption Key (DEK) - 用來加密你資料的金鑰。

  • Encrypted Data Encryption Key (eDEK) - 由你的 KMS 產生的已加密 DEK

  • Key Encryption Key (KEK) - 由你管理的主金鑰,用於將 DEK 加密為 eDEK,以及將 eDEK 解密為 DEK。此金鑰會一直存放於 OpenAI 系統之外。

實作的高層要求

在你的雲端供應商中

  1. 在你的雲端 KMS(Azure、AWS 或 GCP)中建立新金鑰

  2. 建立一項自訂的有限政策,授予 KMS Encrypt/Decrypt 權限

  3. 為 OpenAI 建立信任政策(AWS)、工作負載身分(GCP)或服務主體(Azure)

  4. 向 OpenAI 指派附有限政策的角色,以存取你的 KMS

在 OpenAI 平台中

ChatGPT Enterprise

請建立一個沙盒 ChatGPT 工作區作測試用途。

API

請在你的 OpenAI 控制台中建立一個將套用加密的新專案。

供應商特定功能

對 AWS 而言,OpenAI 會:

  • 使用 ExternalID 呼叫 AssumeRole

對 GCP 而言,OpenAI 會:

  • 從 OpenAI GCP 帳戶呼叫你的 STS endpoint

  • 使用 GCP 存取 token 在你的 KMS 上呼叫 encrypt/decrypt。

對 Azure 而言,OpenAI 會:

  • 為你的 Azure 租戶保管庫請求存取 token

  • 使用該存取 token 在你的 Key Vault 上呼叫 encrypt/decrypt。

你需要從 OpenAI 取得的資料

驗證

你需要識別 OpenAI 用於 AWS 和 GCP 的聯合身分 token。至於 Azure,你需要識別 OpenAI 應用程式註冊的 application id。

驗證參數摘要

OpenAI AWS principalarn:aws:iam::790389265272:role/EnterpriseKeyManagement
OpenAI GCP 服務帳戶 ID105900137572174660365
OpenAI Azure 應用程式 ID20a14814-5ab7-4612-a671-1382b412bf93

實施期間按雲端供應商而定的必要資料

  • 如使用 AWS,你必須設定可識別以下項目的信任政策

  • 如使用 GCP,你必須設定可識別以下項目的工作負載身分

  • 如使用 Azure,你必須在 Azure 租用戶中為 OpenAI 的應用程式註冊建立服務主體

授權

你需要建立一項政策,讓 OpenAI 的身分可以有限度存取你的 KMS。 

AWSGCPAzure
kms:Decryptkms:Encryptcloudkms.cryptoKeyVersions.useToDecryptcloudkms.cryptoKeyVersions.useToEncryptMicrosoft.KeyVault/vaults/keys/encrypt/actionMicrosoft.KeyVault/vaults/keys/decrypt/action

其他

在 Azure 中,金鑰類型(key encryption algorithm)請選擇 RSA,而不是 EC。

OpenAI 需要你提供的資料

請按照此文件的指示,向 OpenAI 註冊你的 KMS。以下概述你需要提供的參數。

  1. 驗證相關

  1. AWS

  1. GCP

  1. Azure

  1. 租用戶 ID

AWSGCPAzure
驗證相關 租用戶 ID
KMS 相關KMS ARN(範例:arn:aws:kms:REGION:ACCOUNT_NUMBER:key:KEY_UUID)KMS 專案 ID(範例:adjective-noun-12345)

KMS 金鑰環名稱
KMS 金鑰名稱
KMS 金鑰位置(範例:us-east1)
保存庫 URI(範例:https://your-vault-name.vault.azure.net/)

金鑰名稱

向 OpenAI 註冊 KMS 後,請繼續按照文件的指示,在 API 專案上啟用 EKM 設定。建立一個全新的 OpenAI API 專案作測試之用。

各供應商的實施指南

如需逐步指引,請參閱下方相應連結。請注意,這些指南主要介紹與 OpenAI 整合的要求,並非針對整個環境的完整指南

啟用 EKM 後不支援的功能

如果已啟用 EKM,以下功能將無法使用:

  • 尚未普遍推出的功能,包括測試版或 Alpha 版功能。

這篇文章對你有幫助嗎?