OpenAI

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

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

更新日期:5 hours 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 是否相符。

這篇文章有幫助嗎?