MeWrite Docs

UnrecognizedClientException: The security token included in the request is invalid

概要

AWSのAPIリクエストで認証情報が認識されない場合に発生するエラーです。アクセスキーが存在しない、無効化されている、または形式が正しくない場合に発生します。

エラーメッセージ

UnrecognizedClientException: The security token included in the request is invalid.
An error occurred (UnrecognizedClientException) when calling the DescribeTable operation: The security token included in the request is invalid.

原因

このエラーは以下の原因で発生します:

  1. アクセスキーIDが存在しない: 削除されたキーを使用
  2. アクセスキーが無効化されている: IAMで無効化されたキー
  3. 認証情報の形式が不正: コピペ時の余分な空白や改行
  4. 異なるAWSアカウントのキー: 別アカウントのキーを使用
  5. 環境変数の競合: 複数の認証情報が競合

解決策

1. アクセスキーの状態を確認

1
2
3
4
5
# IAMコンソールでキーの状態を確認
# IAM → ユーザー → セキュリティ認証情報

# CLIでキー一覧を確認(別の有効なキーで)
aws iam list-access-keys --user-name my-user

2. 認証情報の形式を確認

1
2
3
4
5
6
7
# 余分な空白がないか確認
cat ~/.aws/credentials | cat -A

# 正しい形式
# [default]
# aws_access_key_id = AKIAIOSFODNN7EXAMPLE
# aws_secret_access_key = wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

3. 環境変数をクリア

1
2
3
4
5
6
7
8
# 環境変数の競合を解消
unset AWS_ACCESS_KEY_ID
unset AWS_SECRET_ACCESS_KEY
unset AWS_SESSION_TOKEN
unset AWS_PROFILE

# 再設定
aws configure

4. 新しいアクセスキーを作成

1
2
3
4
5
6
7
# IAMコンソールで新しいキーを作成
# 1. IAM → ユーザー → 対象ユーザー
# 2. セキュリティ認証情報タブ
# 3. アクセスキーを作成

# 新しいキーで設定
aws configure

5. 認証情報の検証

1
2
3
4
5
6
7
8
9
# 認証情報が正しいか確認
aws sts get-caller-identity

# 成功例
# {
#     "UserId": "AIDAEXAMPLE",
#     "Account": "123456789012",
#     "Arn": "arn:aws:iam::123456789012:user/my-user"
# }

よくある間違い

  • アクセスキーをコピーする際に前後の空白が含まれる
  • シークレットキーに特殊文字が含まれ、シェルでエスケープが必要
  • 古いキーをローテーションせずに削除してしまう
  • .env ファイルでクォートの使い方を間違える

関連エラー

参考リンク

関連エラー

AWS の他のエラー

最終更新: 2025-12-16