OpenAI

EKM オンボーディングのトラブルシューティングに関するよくある質問

AWS、GCP、Azure での EKM 導入時によくあるエラーとその解決方法

更新日: 2 days ago

AWS

sts:AssumeRole を実行する権限がありません

ユーザー:arn:aws:sts::xxxxx:assumed-role/EnterpriseKeyManagement/OpenAI-EKM-Service には、リソース arn:aws:iam::xxxxx:role/xxxxxx に対して sts:AssumeRole を実行する権限がありません

信頼ポリシー内の principal と ExternalId を確認してください

ドキュメントのこのセクションの手順を確実に実行してください。具体的には、OpenAI の principal の特定と、sts:ExternalId の設定の両方を行ってください。

すでに sts:ExternalId を設定している場合は、それが EKM を適用しようとしているものと同じ OpenAI の組織 IDであり、別の組織(例えば個人用の組織など)ではないことを確認してください。

ロール ARN に関連付けられた信頼ポリシーを確認してください

指定したロール ARN に信頼ポリシーが正しく保存されていることを確認してください。

併せて、正しいロール ARN を指定していることを確認してください。ARN のスペルが間違っていたり、ARN が存在しない場合は、ロールは存在するものの権限が拒否されている場合と同じエラーが発生します。

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

リソースに対して kms:Encrypt を実行する権限がありません

ユーザー:xxxxx には、リソースに対して kms:Encrypt を実行する権限がありません。

IAM ポリシーで、OpenAI のロールに kms:Encrypt および kms:Decrypt の権限を付与していることを確認してください。

キーポリシーも追加している場合は、OpenAI のロールにkms:Encryptkms:Decrypt の権限も付与されていることを確認してください。

GCP

オーディエンスの GCP STS トークンの取得に失敗しました

オーディエンス //iam.googleapis.com/projects/xxxxxxxxx/locations/global/workloadIdentityPools/xxxxxxx/providers/xxxxxxxxxx の GCP STS トークンを取得できませんでした。{'error': 'invalid_request', 'error_description': '\"audience\" の値が無効です。この値には、ID プロバイダーの完全なリソース名を指定する必要があります。使用可能な形式の一覧については、https://cloud.google.com/iam/docs/reference/sts/rest/v1/TopLevel/token をご覧ください。

GCP は、次の形式のオーディエンスを想定しています:

iam.googleapis.com/projects/xxxxxxxxx/locations/global/workloadIdentityPools/xxxxxxx/providers/xxxxxxxxxx

Management API の 外部鍵 を使用して OpenAI に鍵を登録する際は、正しいパラメータを指定していることを確認してください

  • workload_identity_project_number が12桁の GCP プロジェクト番号であることを確認してください

  • workload_identity_pool_id が正しいことを確認してください

  • workload_identity_provider_id が正しいことを確認してください

IDトークン内のオーディエンスが想定されるオーディエンスと一致しません

オーディエンス //iam.googleapis.com/projects/xxxxxx/locations/global/workloadIdentityPools/xxxxxxx/providers/xxxxxxxx の GCP STS トークンを取得できませんでした。{'error': 'invalid_grant', 'error_description': 'IDトークン[xxxxx]のオーディエンスが、想定されるオーディエンス xxxxxxx と一致しません。'}

OpenAI に設定を登録する際(Management API の外部鍵)、指定するオーディエンスフィールドが、ワークロードの ID プロバイダーで許可されているオーディエンスのいずれかに含まれていることを確認してください。OpenAI の組織 ID を使用することをお勧めします。

Azure

クライアントアプリケーションにサービスプリンシパルがありません

クライアントアプリケーション xxxxx には、テナント xxxxx にサービスプリンシパルがありません。手順については、こちらをご覧ください: https://go.microsoft.com/fwlink/?linkid=2225119

OpenAI / Azure EKM 統合手順に記載されているとおりに、サービスプリンシパルの作成手順を正確に実行したことを確認してください。

呼び出し元はリソースに対してアクションを実行する権限がありません

呼び出し元には、リソースに対してアクションを実行する権限がありません。ロールの割り当て、拒否の割り当て、またはロールの定義が最近変更された場合は、反映されるまでに時間がかかる場合があります。

この同じエラーが、いくつかの理由で表示されることがあります

  • 指定したキー名または Vault 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 が一致することを確認します。

この記事は役に立ちましたか?