OpenAI
Αυτή η σελίδα μεταφράστηκε αυτόματα. Δείτε το πρωτότυπο άρθρο στα αγγλικά.

Οδηγίες ενσωμάτωσης OpenAI / GCP EKM

Οδηγίες βήμα προς βήμα για παροχή GCP και ενεργοποίηση EKM

Τελευταία ενημέρωση: 11 hours ago

Επισκόπηση

Το Enterprise Key Management (EKM) επιτρέπει στην OpenAI να κρυπτογραφεί δεδομένα χρησιμοποιώντας ένα κύριο κλειδί που ελέγχετε εσείς. Αυτό το έγγραφο δείχνει πώς να ρυθμίσετε τον λογαριασμό σας στο GCP ώστε να δώσετε στην OpenAI περιορισμένα δικαιώματα στο KMS σας.

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

Βήματα

1. Δημιουργήστε μια ομοσπονδιακή ταυτότητα για την OpenAI

Η OpenAI θα εκδώσει ένα token ταυτότητας από έναν λογαριασμό GCP που ανήκει στην OpenAI και θα μοιάζει κάπως έτσι.

  • Τα azp και sub είναι το αναγνωριστικό λογαριασμού υπηρεσίας της OpenAI στο GCP

  • Το aud είναι το αναγνωριστικό οργανισμού OpenAI σας. Μπορείτε επίσης να επιλέξετε άλλο audience, όπως το αναγνωριστικό έργου OpenAI σας - δείτε τις παρακάτω οδηγίες

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

Αυτό το βήμα αναγνωρίζει τις δηλώσεις που γίνονται από αυτό το token ταυτότητας και επιτρέπει στο GCP STS σας να εκδώσει ένα token πρόσβασης όταν παρέχεται αυτό το token ταυτότητας.

  1. Μεταβείτε στο IAM & Admin -> Workload Identity Federation και κάντε κλικ στο Create Pool

    GCP IAM & Admin with Workload Identity Federation selected
  2. Στο βήμα Create an identity pool, εισαγάγετε οτιδήποτε για το pool name.

    1. Θυμηθείτε το για αργότερα - θα χρειαστεί να το καταχωρίσετε στην OpenAI

  3. Στο βήμα Add a provider to pool:

    1. Στο Select a provider, επιλέξτε OpenID Connect (OIDC)

    2. Εισαγάγετε οτιδήποτε για το provider name.

    3. Στην ενότητα Issuer (URL), εισαγάγετε https://accounts.google.com

    4. Στην ενότητα Audiences

      1. Επιλέξτε Allowed audiences

      2. Εισαγάγετε το audience που πρέπει να υποδεικνύει η OpenAI όταν σας περνάμε ένα token.

        1. Για ChatGPT ή API: Μπορείτε να βάλετε το αναγνωριστικό οργανισμού OpenAI API (org-xxx)

        2. Για API: μπορείτε να βάλετε ένα συγκεκριμένο αναγνωριστικό έργου API για μεγαλύτερη λεπτομέρεια.

          GCP Workload Identity Provider edit page with Allowed audiences selected and Audience 1 entered
    5. Στην ενότητα Attribute mapping

      1. για το google.subject εισαγάγετε assertion.sub

        Google Cloud attribute mapping with Google 1 google.subject mapped to OIDC 1 assertion.sub
    6. Στην ενότητα Attribute conditions

      1. βάλτε assertion.sub == "105900137572174660365"

  4. Τώρα θα πρέπει να βλέπετε τα workload identity pool και workload identity provider στη λίστα στη σελίδα 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. Βεβαιωθείτε ότι το KMS είναι ενεργοποιημένο

Μεταβείτε στη διεύθυνση https://console.developers.google.com/apis/api/cloudkms.googleapis.com/overview για να ενεργοποιήσετε το KMS. Δεν απαιτείται να δημιουργήσετε το KMS σας στο ίδιο έργο GCP όπου αναγνωρίσατε την ομοσπονδιακή ταυτότητα της OpenAI· ωστόσο, αν τα έργα διαφέρουν, το προϊόν KMS πρέπει τουλάχιστον να είναι ενεργοποιημένο και στα δύο έργα.

3. Δημιουργήστε ένα νέο κλειδί KMS

  1. Μεταβείτε στο Security -> Data Protection > Key Management

  2. Στην καρτέλα Overview κάντε κλικ στο Create key ring

    1. Επιλέξτε οποιοδήποτε όνομα για το key ring σας

    2. Για Purpose and algorithm, επιλέξτε Symmetric encrypt/decrypt

      GCP Key Management Overview page with the Create Key Ring button highlighted
    3. Μόλις δημιουργήσετε ένα key ring, θα πρέπει να εμφανίζεται στην καρτέλα Key Rings. Κάντε κλικ στο key ring.

    4. Στα στοιχεία του key ring, κάντε κλικ στο Create Key

      1. Επιλέξτε οποιοδήποτε όνομα για το κλειδί σας

4. Δημιουργήστε έναν περιορισμένο ρόλο για λειτουργίες κρυπτογράφησης/αποκρυπτογράφησης στο KMS

  1. Μεταβείτε στο IAM & Admin -> Roles -> Create role

  2. Εισαγάγετε οτιδήποτε για τον τίτλο και το ID του ρόλου

  3. Κάντε κλικ στο Add Permissions και μετά προσθέστε τα εξής

    1. cloudkms.cryptoKeyVersions.useToDecrypt

    2. cloudkms.cryptoKeyVersions.useToEncrypt

5. Αντιστοιχίστε την ομοσπονδιακή ταυτότητα της OpenAI στον περιορισμένο ρόλο KMS για λειτουργίες κρυπτογράφησης/αποκρυπτογράφησης

  1. Μεταβείτε στο Security -> Data Protection > Key Management

  2. Κάντε κλικ στο όνομα του key ring σας και μετά στο key name σας για να μεταβείτε στη σελίδα λεπτομερειών του κλειδιού.

    1. Αν δεν το έχετε αυτό, επιστρέψτε στην ενότητα Create a KMS

  3. Κάντε κλικ στην καρτέλα Permissions και μετά στο κουμπί Grant Access

    Google Cloud KMS key details page with Permissions tab open and Grant Access highlighted
  4. Αντιστοιχίστε την ομοσπονδιακή ταυτότητα της OpenAI στον προσαρμοσμένο ρόλο που δημιουργήσατε προηγουμένως

    1. Στην ενότητα Add principals, εισαγάγετε principal://iam.googleapis.com/projects/<YOUR_GCP_PROJECT_NUMBER>/locations/global/workloadIdentityPools/<YOUR_GCP_WORKLOAD_IDENTITY_POOL>/subject/105900137572174660365

      1. Το YOUR_GCP_PROJECT_NUMBER εδώ είναι το έργο στο οποίο αναγνωρίσατε την ομοσπονδιακή ταυτότητα της OpenAI δημιουργώντας ένα YOUR_GCP_WORKLOAD_IDENTITY_POOL. Μπορεί να είναι, αλλά δεν απαιτείται να είναι, το ίδιο έργο όπου βρίσκεται το KMS σας.

      2. Αν τα έργα διαφέρουν, βεβαιωθείτε ότι το KMS είναι τουλάχιστον ενεργοποιημένο στο άλλο έργο μεταβαίνοντας στη διεύθυνση https://console.developers.google.com/apis/api/cloudkms.googleapis.com/overview

    2. Στην ενότητα Assign roles, επιλέξτε τον προσαρμοσμένο ρόλο που δημιουργήσατε στο προηγούμενο βήμα για περιορισμένα δικαιώματα EKM

6. Εφαρμόστε τυχόν πρόσθετους περιορισμούς σύμφωνα με τις δικές σας πρακτικές ασφαλείας

Παραπάνω είναι οι ελάχιστες απαιτούμενες πληροφορίες που χρειάζεται η OpenAI για να ρυθμίσει το EKM. Είστε ελεύθεροι να εφαρμόσετε πρόσθετες πολιτικές κλειδιών ή περιορισμούς σύμφωνα με τις δικές σας εσωτερικές πρακτικές ασφαλείας, αρκεί η OpenAI να μπορεί να καλεί λειτουργίες κρυπτογράφησης και αποκρυπτογράφησης στο KMS σας. Όταν καλέσετε το τελικό σημείο καταχώρισης κλειδιού με την OpenAI που περιγράφεται παρακάτω, θα επικυρώσουμε τη ρύθμισή σας.

Αφού ολοκληρώσετε τα παραπάνω βήματα

ChatGPT Enterprise

Παρακαλούμε επικοινωνήστε με την επαφή σας στην OpenAI και κοινοποιήστε τα εξής:

  • "workload_identity_project_number": "123456789012",

    • Ο 12ψήφιος αριθμός έργου GCP όπου καταχωρίσατε το workload identity της OpenAI

  • "workload_identity_pool_id": "openai-azure",

    • Το pool που περιέχει τον πάροχο Workload Identity που καταχωρίσατε για την OpenAI

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

    • Ο πάροχος Workload Identity που καταχωρίσατε για την OpenAI

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

    • Το όνομα του έργου GCP όπου βρίσκεται το KMS σας

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

    • Το όνομα του κύριου κλειδιού του Key Management System

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

    • Το key ring του Key Management System που περιέχει το κύριο κλειδί που διαχειρίζεστε

  • "kms_key_location": "us-east1"

    • Η περιοχή όπου βρίσκεται το κύριο κλειδί του Key Management System

Θα ενεργοποιήσουμε το EKM για τον οργανισμό/χώρο εργασίας ChatGPT σας.

API

Καταχωρίστε το εξωτερικό κλειδί σας στην OpenAI

Ακολουθήστε τις οδηγίες σε αυτήν την αναφορά API External Keys in the Management API

  • Πρώτα, καταχωρίστε το εξωτερικό κλειδί σας σε επίπεδο οργανισμού OpenAI, κάτι που θα δημιουργήσει ένα αναγνωριστικό εξωτερικού κλειδιού.

  • Σε αυτό το βήμα, θα επικυρώσουμε τη ρύθμισή σας στο GCP ελέγχοντας ότι μπορούμε να κάνουμε auth στο KMS σας.

  • Αυτό δεν θα προσθέσει ακόμα EKM στο έργο OpenAI σας.

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",
   "workload_identity_project_number": "123456789012",
   "workload_identity_pool_id": "openai-azure",
   "workload_identity_provider_id": "openai-ekm-service-role",
   "audience": <το αναγνωριστικό οργανισμού ή έργου σας>,
   "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"
}'

Στη συνέχεια, δημιουργήστε ένα έργο OpenAI που σχετίζεται με το εξωτερικό κλειδί. Μετά από αυτό, το EKM ενεργοποιείται στο έργο σας.

curl -X POST \
-H "Content-type: application/json" \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/projects" \
-d '{
   "name": "Κάποιο Έργο",

   "external_key_id": "extkey_xxxx"

}'

Σας βοήθησε αυτό το άρθρο;