OpenAI
Для перекладу цієї сторінки виконано машинний переклад. Ви можете переглянути оригінальну статтю англійською.

Огляд OpenAI Enterprise Key Management (EKM)

Дізнайтеся, як працює EKM, які провайдери підтримуються та з чого почати

Оновлено: 2 days ago

Огляд

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

Загальний процес

  1. Ми генеруємо Data Encryption Key (DEK) для вашого хмарного провайдера.

  2. Ваш хмарний KMS керує головним Key Encryption Key (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

Розшифрування

Під час розшифрування ми запитуємо розшифрування eDEK вашим хмарним KMS у 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) — зашифрований DEK, згенерований вашим KMS

  • Key Encryption Key (KEK) — головний ключ, яким ви керуєте, який шифрує DEK -> eDEK і розшифровує eDEK -> DEK. Цей ключ завжди залишається поза системами OpenAI.

Загальні вимоги до впровадження

У вашого хмарного провайдера

  1. Створіть новий ключ у вашому хмарному KMS (Azure, AWS або GCP)

  2. Створіть спеціальну обмежену політику з дозволами Encrypt/Decrypt для KMS

  3. Створіть політику довіри (AWS), ідентичність робочого навантаження (GCP) або суб’єкт-службу (для Azure) для OpenAI

  4. Призначте OpenAI роль з обмеженою політикою для доступу до вашого KMS

На платформах OpenAI

ChatGPT Enterprise

Для тестування створіть ізольований робочий простір ChatGPT.

API

На панелі OpenAI створіть новий проєкт, до якого буде застосовано шифрування.

Функції, специфічні для провайдера

Для AWS OpenAI:

  • викликатиме AssumeRole з ExternalID

Для GCP OpenAI:

  • викликатиме вашу кінцеву точку STS з облікового запису GCP OpenAI

  • використовуватиме токен доступу GCP для виклику encrypt/decrypt у вашому KMS.

Для Azure OpenAI:

  • запитуватиме токен доступу для сховища у вашому орендарі Azure

  • використовуватиме цей токен доступу для виклику encrypt/decrypt у вашому Key Vault.

Інформація, яку вам потрібно отримати від OpenAI

Автентифікація

Вам потрібно буде розпізнавати токени федеративної ідентичності OpenAI для AWS і GCP. Для Azure потрібно буде розпізнавати ідентифікатор застосунку OpenAI для його реєстрації застосунку.

Підсумок параметрів автентифікації

AWS-суб’єкт OpenAIarn:aws:iam::790389265272:role/EnterpriseKeyManagement
Ідентифікатор сервісного облікового запису GCP OpenAI105900137572174660365
Ідентифікатор застосунку Azure OpenAI20a14814-5ab7-4612-a671-1382b412bf93

Обов’язкова інформація під час впровадження залежно від вашого хмарного провайдера

  • Для AWS потрібно налаштувати політику довіри, яка розпізнає:

    • принципал OpenAI (номер облікового запису + роль)

    • ExternalID, який є ідентифікатором вашого проєкту OpenAI

  • Для GCP потрібно налаштувати ідентифікацію робочого навантаження, яка розпізнає:

    • ідентифікатор сервісного облікового запису OpenAI

    • аудиторію, яка є ідентифікатором вашого проєкту OpenAI

  • Для Azure потрібно створити суб’єкт-службу у вашому тенанті Azure для реєстрації застосунку OpenAI

    • Створіть його для ідентифікатора клієнта застосунку OpenAI: 20a14814-5ab7-4612-a671-1382b412bf9

    • Це можна зробити, надіславши POST-запит до кінцевої точки https://graph.microsoft.com/v1.0/servicePrincipals.

Авторизація

Вам потрібно буде створити політику, яка надає ідентичності OpenAI обмежений доступ до вашого KMS. 

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

Інше

В Azure для типу ключа (алгоритму шифрування ключа) виберіть RSA, а не EC.

Інформація, яку OpenAI потрібно отримати від вас

Дотримуйтесь інструкцій у цьому документі, щоб зареєструвати вашу службу KMS в OpenAI. Ось короткий огляд параметрів, які вам потрібно буде надати.

  1. Пов’язане з автентифікацією

    1. AWS

      1. IAM Role ARN — роль, яку OpenAI має взяти на себе (приклад: arn:aws:iam::123456789:role/role-name)

      2. ExternalID — ідентифікатор вашої організації OpenAI

    2. GCP

      1. Номер проєкту Workload Identity (приклад: 123456789)

      2. Ідентифікатор пулу Workload Identity

      3. Ідентифікатор постачальника Workload Identity

      4. Дозволена аудиторія: ідентифікатор вашої організації OpenAI

    3. Azure

      1. Ідентифікатор тенанта

AWSGCPAzure
Пов’язане з автентифікацією Ідентифікатор тенанта
Пов’язане з KMSKMS ARN — (приклад: arn:aws:kms:REGION:ACCOUNT_NUMBER:key:KEY_UUID)Ідентифікатор проєкту KMS (приклад: adjective-noun-12345)Назва кільця ключів KMSНазва ключа KMSРозташування ключа KMS (приклад: us-east1)URI сховища (приклад: https://your-vault-name.vault.azure.net/)Назва ключа

Після реєстрації вашої служби KMS в OpenAI продовжуйте дотримуватися інструкцій у документі, щоб активувати конфігурацію EKM для проєкту API. Створіть новий проєкт API OpenAI для тестування.

Посібники з упровадження для окремих провайдерів

Покрокові вказівки див. за відповідними посиланнями нижче. Зверніть увагу: вони зосереджені на вимогах інтеграції з OpenAI і не призначені бути вичерпним посібником для всього вашого середовища

Функції, що не підтримуються, якщо EKM увімкнено

У цьому початковому випуску такі функції недоступні, якщо EKM увімкнено:

  • Програми із синхронізацією

  • Функції, які ще не є загальнодоступними (тобто все, що досі в бета/альфа-версії)

Чи була ця стаття корисною?