問題の説明
要求は、security token Service (STS) によって生成されたセキュリティトークンに対して構成されたポリシーによって拒否されます。
原因
STSからセキュリティトークンを取得するためのコードのポリシーパラメーターは、権限の問題を引き起こします。
例
たとえば、セキュリティトークンを取得するための次のJavaサンプルコードでは、ポリシーパラメーターはセキュリティトークンに関連付けられたアクセス許可を指定します。 セキュリティトークンに適用される実際の権限は、セキュリティトークンを取得するためのコード内のロール権限とポリシーパラメーターの権限の共通部分です。
ソリューション
OSS API操作で指定されたポリシーパラメーターで指定された権限を確認します。 詳細については、「STSが提供する一時的な資格情報を使用したOSSへのアクセス」をご参照ください。 セキュリティトークンに適用される実際の権限は、ステップ4: OSSにオブジェクトをアップロードするためのロール権限の付与で付与されたロール権限と、ステップ5: 一時的なアクセス資格情報の取得でポリシーパラメーターで指定された権限の共通部分です。 次の例を使用して、これら2つの手順で構成した権限の共通部分を確認します。
例 1
手順4で設定したロール権限が
AliyunOSSFullAccess
システム権限で、手順5でoss:PutObject
権限が設定されている場合、一時的なアクセス資格情報は最終的にoss:PutObject
権限を取得します。 この場合、指定されたバケットにのみオブジェクトをアップロードできます。例 2
手順4で設定したロール権限が
oss:PutObject
システム権限で、手順5でoss:GetObject
権限が設定されている場合、一時アクセス資格情報は権限を取得できず、指定されたバケットに対して操作を実行できません。