必要條件
這裡假設你已經依照以下其中一份指南進行操作,向 OpenAI 註冊你的外部 KMS 金鑰
關鍵詞
金鑰輪替和金鑰撤銷的用途不同。請確認為你的使用案例選擇正確的動作。
金鑰輪替:產生新的加密材料,用於加密新資料,同時仍可解密先前使用舊金鑰加密的資料
金鑰輪替不會影響對 OpenAI 資料的存取權限
金鑰撤銷:撤銷所有使用先前金鑰加密的資料存取權限。
金鑰撤銷會撤銷對 OpenAI 資料的存取權限
如何驗證你的 KMS 金鑰是否使用中
你的雲端服務供應商應該會有記錄:
AWS - https://docs.aws.amazon.com/kms/latest/developerguide/security-logging-monitoring.html
Azure - https://learn.microsoft.com/en-us/azure/key-vault/general/howto-logging
如何輪替金鑰
你可以設定自動金鑰輪替
AWS - https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html
Google Cloud (GCP):https://cloud.google.com/kms/docs/rotate-key#automatic
Azure - https://learn.microsoft.com/en-us/azure/key-vault/keys/how-to-configure-key-rotation
測試用:你對 OpenAI 資料的存取權限不會受到這項變更影響
如何撤銷金鑰
有許多方法可以撤銷 OpenAI 對你金鑰的存取權限,任何驗證流程中的中斷都算:
如果你撤銷 OpenAI 角色對 KMS 金鑰的存取權限
如果你移除 KMS 金鑰的加密/解密權限
如果你使用 AWS 金鑰別名 (不建議),並切換底層 KMS ARN。此動作有時會與金鑰輪替混淆,但實際上是金鑰撤銷,因此不建議這麼做,除非你確定要執行此動作。
如果你要求 OpenAI 更新用於你 ChatGPT Enterprise 工作區的 KMS ARN
若要驗證金鑰撤銷:
等待一小時,讓 OpenAI 端的所有快取項目失效,然後測試撤銷
如果你使用的是 ChatGPT Enterprise,則將不能再閱讀先前的對話,對話搜尋將不會顯示先前對話的結果,而且你將無法存取先前的自訂 GPT。
如果你使用 API,將無法再下載先前的批次檔案、使用先前的微調模型,或參照先前使用 Responses API 建立的回應。
如果你正在使用 API,則也可以立即測試 OpenAI 是否已完成處理你的金鑰撤銷,且該撤銷將在一小時內生效
建立管理員 API 金鑰 (不是一般的 API 金鑰):
呼叫 curl -X GET -H "Authorization: Bearer $ADMIN_API_KEY" https://api.openai.com/v1/organization/external_keys ,即可取得與你的工作區或專案相關聯的 OpenAI 外部金鑰 ID ( extkey_xxx)
現在呼叫 curl -X POST -H "Authorization: Bearer $ADMIN_API_KEY" "https://api.openai.com/v1/organization/external_keys/extkey_xxx/validate"
金鑰撤銷的最佳做法
如果正在使用 API
封存你已使其資料無法存取的 API 專案。接著,設定新的 KMS 金鑰,並建立與新 KMS 金鑰相關聯的新 API 專案。
請注意,不能交換與已執行金鑰撤銷的舊 API 專案相關的 KMS 金鑰,你必須將舊專案封存。已發出金鑰撤銷的專案不應繼續使用。API 讓建立新專案變得非常容易,所以請善用這項功能。
如果你使用的是 ChatGPT Enterprise
執行金鑰撤銷之後,請聯絡 OpenAI 支援團隊。
我們會協助你建立新的工作區。我們不會嘗試透過更新舊工作區以使用新的 KMS 金鑰來重複使用該工作區。這是因為當金鑰撤銷如設計般運作時,先前使用已撤銷金鑰加密的資料將變得無法存取。
