ภาพรวม
Enterprise Key Management (EKM) ช่วยให้คุณเข้ารหัสเนื้อหาของลูกค้าที่ OpenAI โดยใช้คีย์ที่จัดการผ่านระบบจัดการคีย์ภายนอก (KMS)ของคุณเอง โดยพร้อมใช้งานทั้งสำหรับ ChatGPT Enterprise และ API
OpenAI รองรับการเข้ารหัสแบบ Bring Your Own Key (BYOK) ด้วยบัญชีภายนอกใน AWS KMS, Google Cloud (GCP) และ Azure Key Vault
ขณะนี้ การใช้งาน EKM ยังจำกัดเฉพาะเวิร์กสเปซ Enterprise และ Edu ที่มีตัวแทนดูแลบัญชี OpenAI โดยเฉพาะ
การทำงานของการเข้ารหัส OpenAI EKM
ลำดับการทำงานระดับบน
เราสร้าง Data Encryption Key (DEK) สำหรับผู้ให้บริการคลาวด์ของคุณ
KMS คลาวด์ของคุณจะจัดการ Key Encryption Key (KEK) หลัก ซึ่งอาจจัดเก็บไว้ภายในคลาวด์ของคุณหรือภายนอกก็ได้ วิธีติดตั้งใช้งานขึ้นอยู่กับคุณ
เราขอให้คลาวด์ของคุณเข้ารหัส DEK เพื่อให้ได้ encrypted DEK (eDEK) หาก KEK ของคุณจัดเก็บไว้ภายนอก คลาวด์ของคุณก็จะเพียงทำการส่งต่อเพิ่มเติมไปยังที่จัดเก็บภายนอกของคุณ ในขั้นตอนที่ OpenAI ไม่สามารถมองเห็นรายละเอียดได้
การเข้ารหัส
เมื่อมีการเข้ารหัส ข้อมูลของคุณจะถูกเข้ารหัสด้วย DEK และ eDEK จะถูกจัดเก็บเป็นเมทาดาทาบนไฟล์

การถอดรหัส
เมื่อมีการถอดรหัส เราจะขอให้ KMS คลาวด์ของคุณถอดรหัส eDEK เป็น DEK แล้วเราจะถอดรหัสข้อมูลด้วย DEK

คำสำคัญ
Data Encryption Key (DEK) - คีย์ที่ใช้เข้ารหัสข้อมูลของคุณ
Encrypted Data Encryption Key (eDEK) - DEK ที่ถูกเข้ารหัส ซึ่งสร้างโดย KMS ของคุณ
Key Encryption Key (KEK) - คีย์หลักที่คุณจัดการ ซึ่งใช้เข้ารหัส DEK -> eDEK และถอดรหัส eDEK -> DEK คีย์นี้จะอยู่นอกระบบของ OpenAI เสมอ
ข้อกำหนดระดับสูงสำหรับการติดตั้งใช้งาน
ในผู้ให้บริการคลาวด์ของคุณ
สร้างคีย์ใหม่ในKMSบนคลาวด์ของคุณ (Azure, AWS หรือ GCP)
สร้างนโยบายแบบกำหนดเองที่มีขอบเขตจำกัด พร้อมสิทธิ์ Encrypt/Decrypt บน KMS
สร้าง trust policy (AWS), workload identity (GCP) หรือ service principal (สำหรับ Azure) ให้กับ OpenAI
กำหนดบทบาทให้ OpenAI พร้อมนโยบายแบบจำกัดเพื่อเข้าถึง KMS ของคุณ
ในแพลตฟอร์ม OpenAI
ChatGPT Enterprise
สร้างเวิร์กสเปซ ChatGPT แบบ sandbox สำหรับการทดสอบ
API
ในแดชบอร์ด OpenAI ของคุณ ให้สร้างโปรเจกต์ใหม่ที่จะใช้การเข้ารหัส
การทำงานเฉพาะผู้ให้บริการ
สำหรับ AWS OpenAI จะ:
เรียก AssumeRole พร้อม ExternalID
สำหรับ GCP OpenAI จะ:
เรียก endpoint STS ของคุณจากบัญชี GCP ของ OpenAI
ใช้ GCP access token เพื่อเรียก encrypt/decrypt บน KMS ของคุณ
สำหรับ Azure OpenAI จะ:
ขอ access token สำหรับ vault ของ Azure tenant ของคุณ
ใช้ access token นั้นเพื่อเรียก encrypt/decrypt บน Key Vault ของคุณ
ข้อมูลที่คุณต้องได้รับจาก OpenAI
การยืนยันตัวตน
คุณจะต้องรู้จัก federated identity token ของ OpenAI สำหรับ AWS และ GCP สำหรับ Azure คุณจะต้องรู้จัก application id ของ OpenAI สำหรับ app registration ของ OpenAI
สรุปพารามิเตอร์การยืนยันตัวตน
| OpenAI AWS principal | arn:aws:iam::790389265272:role/EnterpriseKeyManagement |
| ID บัญชีบริการ GCP ของ OpenAI | 105900137572174660365 |
| ID แอปพลิเคชัน Azure ของ OpenAI | 20a14814-5ab7-4612-a671-1382b412bf93 |
ข้อมูลที่จำเป็นระหว่างการใช้งานจริงตามผู้ให้บริการคลาวด์ของคุณ
สำหรับ AWS คุณต้องตั้งค่า นโยบายความเชื่อถือ ที่รู้จัก:
principal ของ OpenAI (หมายเลขบัญชี + บทบาท)
ExternalID ที่เป็นรหัสโปรเจ็กต์ OpenAI ของคุณ
สำหรับ GCP คุณต้องตั้งค่า workload identity ที่รู้จัก:
รหัสบัญชีบริการของ OpenAI
audience ที่เป็นรหัสโปรเจ็กต์ OpenAI ของคุณ
สำหรับ Azure คุณต้องสร้าง service principal ใน tenant Azure ของคุณสำหรับการลงทะเบียนแอปของ OpenAI
สร้างรายการหนึ่งสำหรับ รหัสไคลเอ็นต์ของแอปพลิเคชัน ของ OpenAI: 20a14814-5ab7-4612-a671-1382b412bf9
คุณอาจทำได้โดยโพสต์ไปยัง endpoint https://graph.microsoft.com/v1.0/servicePrincipals
การกำหนดสิทธิ์
คุณจะต้องสร้างนโยบายที่อนุญาตให้ตัวตนของ OpenAI เข้าถึง KMS ของคุณได้อย่างจำกัด
| AWS | GCP | Azure |
| kms:Decryptkms:Encrypt | cloudkms.cryptoKeyVersions.useToDecryptcloudkms.cryptoKeyVersions.useToEncrypt | Microsoft.KeyVault/vaults/keys/encrypt/actionMicrosoft.KeyVault/vaults/keys/decrypt/action |
อื่นๆ
ใน Azure สำหรับประเภทคีย์ (อัลกอริทึมการเข้ารหัสคีย์) ให้เลือก RSA ไม่ใช่ EC
ข้อมูลที่ OpenAI ต้องการจากคุณ
ทำตามคำแนะนำในเอกสารนี้เพื่อลงทะเบียน KMS ของคุณกับ OpenAI ต่อไปนี้คือสรุปพารามิเตอร์ที่คุณจะต้องระบุ
เกี่ยวกับการยืนยันตัวตน
AWS
IAM Role ARN - บทบาทที่ให้ OpenAI สวมสิทธิ์ (ตัวอย่าง: arn:aws:iam::123456789:role/role-name)
ExternalID - รหัสองค์กร OpenAI ของคุณ
GCP
หมายเลขโปรเจ็กต์ Workload Identity (ตัวอย่าง: 123456789)
รหัสพูล Workload Identity
รหัสผู้ให้บริการ Workload Identity
กลุ่มเป้าหมายที่อนุญาต: รหัสองค์กร OpenAI ของคุณ
Azure
Tenant ID
| AWS | GCP | Azure | |
| เกี่ยวกับการยืนยันตัวตน | Tenant ID | ||
| เกี่ยวกับ KMS | KMS ARN - (ตัวอย่าง: arn:aws:kms:REGION:ACCOUNT_NUMBER:key:KEY_UUID) | KMS Project ID (ตัวอย่าง: adjective-noun-12345)ชื่อ key ring ของ KMSชื่อคีย์ KMSตำแหน่งคีย์ KMS (ตัวอย่าง: us-east1) | Vault URI (ตัวอย่าง: https://your-vault-name.vault.azure.net/)ชื่อคีย์ |
หลังจากที่คุณลงทะเบียน KMS ของคุณกับ OpenAI แล้ว ให้ทำตามคำแนะนำในเอกสารต่อเพื่อเปิดใช้งานการกำหนดค่า EKM ของคุณในโปรเจ็กต์ API สร้างโปรเจ็กต์ OpenAI API ใหม่ สำหรับการทดสอบ
คู่มือการใช้งานเฉพาะผู้ให้บริการ
ดูคำแนะนำทีละขั้นตอนได้จากลิงก์ที่เกี่ยวข้องด้านล่าง โปรดทราบว่าสิ่งเหล่านี้มุ่งเน้นข้อกำหนดการผสานรวมกับ OpenAI และไม่ได้มีวัตถุประสงค์เพื่อใช้เป็นคู่มือที่ครอบคลุมสำหรับสภาพแวดล้อมทั้งหมดของคุณ
ฟีเจอร์ที่ไม่รองรับเมื่อเปิดใช้ EKM
ในการเปิดตัวระยะแรกนี้ ฟีเจอร์ต่อไปนี้จะไม่พร้อมใช้งานหากเปิดใช้ EKM:
แอปที่มีการซิงก์
ฟีเจอร์ที่ยังไม่เปิดให้ใช้งานทั่วไป (เช่น สิ่งที่ยังอยู่ใน beta/alpha)
