[トップページ] [FAQ 一覧]

対象:エラーメッセージ

"Encoded authorization failure message" のメッセージを表示させる2通りのコマンド紹介





疑問


IAM ユーザで権限を制限している場合やインスタンスのロールをアタッチして処理を行っている場合、APIをコールすると権限不足でエラーになる場合があります。
以下のようなメッセージが表示されます。


You are not authorized to perform this operation. Encoded authorization failure message: <メッセージ>



その場合のメッセージもデコードされていて見れなくなっている場合があります。(おそらくセキュリティ上の理由です。不足権限が表示されると攻撃のヒントになるためでしょうか。)
そのような場合、メッセージをデコードする方法を紹介します。デコードには権限が必要です。


対処


(1)ポリシー
デコードにはポリシー(sts:DecodeAuthorizationMessage)が必要です。このポリシーがないとデコードできません。

(2)コマンド
aws コマンドあるいは powershell のコマンドでデコードが可能です。以下のようなコマンドで対応が可能です。


PS:>Convert-STSAuthorizationMessage <メッセージ>



以下は aws コマンドの例です。以下の例ではメッセージの内容をファイルに保管してから変更しています。

C:\>aws sts decode-authorization-message --encoded-message file://<ファイルパス>




コマンドの確認




"aws sts decode-authorization-message"に対応する powershell コマンドは以下で確認が可能です。


get-awscmdletname -awsclicommand "aws sts decode-authorization-message"


CmdletName ServiceOperation ServiceName CmdletNounPrefix
---------- ---------------- ----------- ----------------
Convert-STSAuthorizationMessage DecodeAuthorizationMessage AWS Security Token Service STS


【超重要】本ページは2019/03/21に記載されました。情報が古くなっている可能性があります。




[ 一覧に戻る]


【注意事項】本ページの内容は個人的に調査した結果がであり内容が正しいことは保証されません。
またAWSサービスは常に改良、アップデートされており本ページの内容が古く誤った内容になる可能性もあります。変更になっても本ページが正しく更新されるとは限りません。
あくまでも参考程度でご覧ください。内容により発生したいかなる時間的損害、金銭的損害、その他の損害に関しても何人も保証しません。