OpenAI

EKM 上線疑難排解常見問答集

常見的 EKM 上線錯誤以及如何解決 AWS、GCP 和 Azure 的問題

更新日期:11 days ago

AWS

未獲授權執行:sts:AssumeRole

使用者:arn:aws:sts::xxxxx:assumed-role/EnterpriseKeyManagement/OpenAI-EKM-Service 未獲授權於資源:arn:aws:iam::xxxxx:role/xxxxxx 執行:sts:AssumeRole

驗證信任原則中的主體和 ExternalId

請確認你已按照文件中的此章節操作,包括辨識 OpenAI 的主體,以及設定 sts:ExternalId 這兩者。

如果你已填入 sts:ExternalId,請確認它是你要套用 EKM 的同一個 OpenAI 組織 ID,而非其他不同的組織,例如個人組織。

驗證信任原則與角色 ARN 的關聯

確認你的信任原則已正確儲存至你提供的角色 ARN。

也請確認你提供的角色 ARN 正確無誤。如果你的 ARN 拼寫錯誤且不存在,我們會得到與該角色存在但拒絕授予權限時相同的錯誤。

AWS IAM role details with Trust relationships tab open and the role ARN highlighted

未獲授權在資源上執行:kms:Encrypt

使用者:xxxxx 未獲授權於資源上執行:Km:Encrypt

請確認你的 IAM 原則已將 kms:Encrypt kms:Decrypt 授予 OpenAI 的角色。如果你也新增了金鑰原則,請確認其中也已將 kms:Encrypt kms:Decrypt 授予 OpenAI 的角色。

GCP

無法取得 GCP STS Token (用於目標受眾)

無法為受眾取得 GCP STS token //iam.googleapis.com/projects/xxxxxxxxx/locations/global/workloadIdentityPools/xxxxxxx/providers/xxxxxxxxxx:{'error': 'invalid_request', 'error_description': \"audience\" 的值無效。此值應為身分提供者的完整資源名稱。請參閱 https://cloud.google.com/iam/docs/reference/sts/rest/v1/TopLevel/token以查看可用格式清單。

GCP 預期你輸入的「受眾」格式如下:

iam.googleapis.com/projects/xxxxxxxxx/locations/global/workloadIdentityPools/xxxxxxx/providers/xxxxxxxxxx請確認你在透過 管理 API 的外部金鑰向 OpenAI 註冊金鑰時,已提供正確的參數。

  • 請確認 workload_identity_project_number 是你的 12 位數 GCP 專案編號

  • 請確認 workload_identity_pool_id 正確無誤

  • 請確認 workload_identity_provider_id 正確無誤

ID Token 中的對象與預期的對象不符

無法為受眾取得 GCP STS Token //iam.googleapis.com/projects/xxxxxx/locations/global/workloadIdentityPools/xxxxxxx/providers/xxxxxxxx:{'error': 'invalid_grant', 'error_description': 'ID Token [xxxxx] 中的對象與預期的對象 xxxxxxx 不符。'}

確保你在 OpenAI 註冊配置時提供的 audience 欄位(管理 API 中的外部密鑰)是你的工作負載身分提供者的允許受眾之一。建議使用你的 OpenAI 組織 ID。

Azure

用戶端應用程式缺少服務主體。

用戶端應用程式 xxxxx 在租戶 xxxxx 中缺少服務主體。請參閱這裡的說明:https://go.microsoft.com/fwlink/?linkid=2225119

請確認你已確實依照 OpenAI / Azure EKM 整合指示中所述建立服務主體。

你未獲授權執行此資源的動作

呼叫端未獲授權執行資源上的動作。如果角色指派、拒絕指派或角色定義最近有變更,請留意傳播時間。

同樣的錯誤可能會因為幾種原因而出現

  • 你提供的金鑰名稱或保存庫 URI 錯誤,或該項目不存在。

  • 你尚未建立包含這些資料動作的角色,並將該角色指派給 OpenAI 的服務主體

    • Microsoft.KeyVault/vaults/keys/encrypt/action

    • Microsoft.KeyVault/vaults/keys/decrypt/action

金鑰名稱不符合模式

"'key_name' 無效:字串不符合模式。預期為符合模式 '^org-[0-9a-zA-Z-]*--[0-9a-zA-Z-]*$' 的字串。"

請在 Key Vault 金鑰名稱前加上你的 OpenAI 組織 ID。

這是安全性團隊建議的最佳做法,可防止你的金鑰保管庫金鑰遭到不同使用者註冊。我們會在註冊金鑰時,以及每次向你的金鑰保管庫提出要求時,驗證組織 ID 是否相符。

這篇文章有幫助嗎?