OpenAI
Deze pagina is automatisch vertaald. Bekijk het oorspronkelijke Engelstalige artikel.

OpenAI / GCP EKM-integratie-instructies

Stapsgewijze instructies om GCP in te richten en EKM te activeren

Bijgewerkt: 13 days ago

Overzicht

Met Enterprise Key Management (EKM) kan OpenAI gegevens versleutelen met een hoofdsleutel die u beheert. In dit document wordt uitgelegd hoe u uw GCP-account instelt om OpenAI beperkte rechten op uw KMS te geven.

Diagram of OpenAI GCP EKM integration flow using STS token exchange and KMS encrypt or decrypt requests

Stappen

1. Maak een gefedereerde identiteit voor OpenAI

OpenAI geeft een identiteitstoken uit vanuit een GCP-account van OpenAI dat er ongeveer zo uitziet.

  • De azp en sub zijn de serviceaccount-ID van OpenAI in GCP

  • De aud is uw OpenAI-organisatie-ID. U kunt ook een andere audience kiezen, zoals uw OpenAI-project-ID - zie de instructies hieronder

{
  "aud": "org-xxxx",
  "azp": "105900137572174660365",
  "exp": 1747876928,
  "iat": 1747873328,
  "iss": "https://accounts.google.com",
  "sub": "105900137572174660365"
}

In deze stap worden de claims van dat identiteitstoken herkend en kan uw GCP STS een toegangstoken uitgeven wanneer dat identiteitstoken wordt aangeleverd.

  1. Ga naar IAM & Admin -> Workload Identity Federation en klik op Pool maken

    GCP IAM & Admin with Workload Identity Federation selected
  2. Voer in de stap Een identity pool maken iets in als poolnaam.

    1. Onthoud dit voor later - u moet dit bij OpenAI registreren

  3. In de stap Een provider aan pool toevoegen:

    1. Selecteer bij Een provider selecteren OpenID Connect (OIDC)

    2. Voer iets in als providernaam.

    3. Voer in het gedeelte Issuer (URL) https://accounts.google.com in

    4. In het gedeelte Audiences

      1. Selecteer Allowed audiences

      2. Voer de audience in die OpenAI moet aangeven wanneer we u een token doorgeven.

        1. Voor ChatGPT of API: u kunt de OpenAI API-organisatie-ID (org-xxx) invoeren

        2. Voor API: u kunt een specifieke API-project-id invoeren voor meer granulariteit.

          GCP Workload Identity Provider edit page with Allowed audiences selected and Audience 1 entered
    5. In het gedeelte Attribuuttoewijzing

      1. voert u voor google.subject assertion.sub

        in

        Google Cloud attribute mapping with Google 1 google.subject mapped to OIDC 1 assertion.sub
    6. In het gedeelte Attribuutvoorwaarden

      1. voert u assertion.sub == "105900137572174660365" in

  4. Nu ziet u uw workload identity pool en workload identity provider vermeld op de pagina https://console.cloud.google.com/iam-admin/workload-identity-pools

    1. Workload identity pool-id

      GCP Workload Identity Pools page highlighting the provider ID value needed for OpenAI EKM setup
    2. Workload identity provider-ID

      GCP Workload Identity Provider edit page with the provider ID field highlighted

2. Zorg dat KMS is ingeschakeld

Ga naar https://console.developers.google.com/apis/api/cloudkms.googleapis.com/overview om KMS in te schakelen. U hoeft uw KMS niet te maken in hetzelfde GCP-project waarin u de gefedereerde identiteit van OpenAI hebt herkend; als de projecten echter verschillen, moet het KMS-product in elk geval in beide projecten ingeschakeld zijn.

3. Maak een nieuwe KMS-sleutel

  1. Ga naar Security -> Data Protection > Key Management

  2. Klik op het tabblad Overzicht op Sleutelring maken

    1. Kies een willekeurige naam voor uw sleutelring

    2. Selecteer bij Doel en algoritme Symmetrisch versleutelen/ontsleutelen

      GCP Key Management Overview page with the Create Key Ring button highlighted
    3. Zodra u een sleutelring hebt gemaakt, moet die op het tabblad Key Rings worden vermeld. Klik op de sleutelring.

    4. Klik in de details van de sleutelring op Sleutel maken

      1. Kies een willekeurige naam voor uw sleutel

4. Maak een beperkte rol voor versleutelings-/ontsleutelingsbewerkingen op het KMS

  1. Ga naar IAM & Admin -> Roles -> Rol maken

  2. Voer iets in voor de roltitel en ID

  3. Klik op Permissions toevoegen en voeg daarna het volgende toe

    1. cloudkms.cryptoKeyVersions.useToDecrypt

    2. cloudkms.cryptoKeyVersions.useToEncrypt

5. Wijs de gefedereerde identiteit van OpenAI toe aan de beperkte KMS-rol voor versleutelings-/ontsleutelingsbewerkingen

  1. Ga naar Security -> Data Protection > Key Management

  2. Klik op de naam van uw sleutelring en vervolgens op uw sleutelnaam om naar de detailpagina van uw sleutel te gaan.

    1. Als u dit niet hebt, ga dan terug naar het gedeelte Een KMS maken

  3. Klik op het tabblad Permissions en vervolgens op de knop Toegang verlenen

    Google Cloud KMS key details page with Permissions tab open and Grant Access highlighted
  4. Wijs de gefedereerde identiteit van OpenAI toe aan de aangepaste rol die u eerder hebt gemaakt

    1. Voer in het gedeelte Add principals principal://iam.googleapis.com/projects/<YOUR_GCP_PROJECT_NUMBER>/locations/global/workloadIdentityPools/<YOUR_GCP_WORKLOAD_IDENTITY_POOL>/subject/105900137572174660365 in

      1. YOUR_GCP_PROJECT_NUMBER hier is het project waarin u de gefedereerde identiteit van OpenAI hebt herkend door een YOUR_GCP_WORKLOAD_IDENTITY_POOL te maken. Dit kan, maar hoeft niet, hetzelfde project te zijn als waarin uw KMS zich bevindt.

      2. Als de projecten verschillen, zorg er dan voor dat KMS ten minste is ingeschakeld op het andere project door naar https://console.developers.google.com/apis/api/cloudkms.googleapis.com/overview te gaan

    2. Selecteer in het gedeelte Assign roles de aangepaste rol die u in de vorige stap hebt gemaakt voor beperkte EKM-rechten

6. Pas eventuele aanvullende beperkingen toe in lijn met uw eigen beveiligingspraktijken

Hierboven staat de minimaal vereiste informatie die OpenAI nodig heeft om EKM in te stellen. U kunt aanvullende sleutelbeleidsregels of beperkingen toepassen in lijn met uw eigen interne beveiligingspraktijken, zolang OpenAI versleutelings- en ontsleutelingsbewerkingen op uw KMS kan aanroepen. Wanneer u het endpoint voor sleutelregistratie bij OpenAI aanroept dat hieronder wordt beschreven, valideren we uw configuratie.

Na het voltooien van de bovenstaande stappen

ChatGPT Enterprise

Neem contact op met uw OpenAI-contactpersoon en deel het volgende:

  • "workload_identity_project_number": "123456789012",

    • Het 12-cijferige GCP-projectnummer waarin u de workload identity van OpenAI hebt geregistreerd

  • "workload_identity_pool_id": "openai-azure",

    • De pool met de Workload Identity-provider die u voor OpenAI hebt geregistreerd

  • "workload_identity_provider_id": "openai-ekm-service-role",

    • De Workload Identity-provider die u voor OpenAI hebt geregistreerd

  • "kms_project_id": "adjective-noun-12345",

    • De naam van het GCP-project waarin uw KMS zich bevindt

  • "kms_key_name": "openai-kms-key",

    • De naam van de hoofdsleutel van het Key Management System

  • "kms_key_ring_name": "openai-kms-key-ring",

    • De sleutelring van het Key Management System die de door u beheerde hoofdsleutel bevat

  • "kms_key_location": "us-east1"

    • De regio waar de hoofdsleutel van uw Key Management System zich bevindt

We schakelen EKM in voor uw ChatGPT-organisatie/werkruimte.

API

Registreer uw externe sleutel bij OpenAI

Volg de instructies in deze API-referentie Externe sleutels in de Management API

  • Registreer eerst uw externe sleutel op het niveau van de OpenAI-organisatie, waardoor een external key id wordt gegenereerd.

  • In deze stap valideren we uw configuratie op GCP door te controleren of we ons bij uw KMS kunnen authenticeren.

  • Hiermee wordt EKM nog niet aan uw OpenAI-project toegevoegd.

curl -X POST \
-H "Content-type: application/json" \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/external_keys" \
-d '{
   "type": "gcp",
   "name": "GCP EKM-configuratie",
   "workload_identity_project_number": "123456789012",
   "workload_identity_pool_id": "openai-azure",
   "workload_identity_provider_id": "openai-ekm-service-role",
   "audience": <uw org-id of project-id>,
   "kms_project_id": "adjective-noun-12345",
   "kms_key_name": "openai-kms-key",
   "kms_key_ring_name": "openai-kms-key-ring",
   "kms_key_location": "us-east1"
}'

Maak vervolgens een OpenAI-project dat aan de externe sleutel is gekoppeld. Daarna is EKM geactiveerd voor uw project.

curl -X POST \
-H "Content-type: application/json" \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/projects" \
-d '{
   "name": "Een project",

   "external_key_id": "extkey_xxxx"

}'

Was dit artikel nuttig?