1. ホーム
  2. amazon-web-services

[解決済み] 新しいIAM管理者ユーザーに "この操作を実行する権限がありません "と表示される

2022-02-15 04:08:27

質問事項

OSXでAWS CLIを使い始めようとしています。私は以下をインストールしました。 aws をpipで実行します。IAMで新しいユーザーを作成し、ビルド済みの AdministratorAccess - AWS Managed policy ポリシーに従います。次に、生成されたアクセスキーIDとシークレットアクセスキーをコピーしました。

作成したユーザはどのグループにも属していません。彼らのポリシーは以下のようなものです。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "*",
            "Resource": "*"
        }
    ]
}

次に aws configure をコマンドラインから入力し、コピーしたアクセスキーとシークレットキーに加え、リージョンコードとして eu-west-1 (IAMユーザーはグローバルなので関係なさそうですが)、出力形式は text .

次に、新しいグループを設定するための簡単なテストコマンドを実行してみました。

$  aws ec2 create-security-group --group-name my-sg --description "My security group" --debug

しかし、これは次のようなエラーで失敗します。

の呼び出し時にクライアントエラー(UnauthorizedOperation)が発生しました。 CreateSecurityGroup オペレーションを実行してください。あなたはこの操作を実行する権限がありません。 操作になります。

他のコマンドも同じように失敗します。

キーのコピペミスという説しかないのですが、上記の全工程を2回やってみたところ、2回とも同じように失敗しています。何が間違っているのでしょうか?どの部分が失敗しているのかをデバッグする方法はありますか?

解決方法を教えてください。

AWS CLIがどこか他の場所から認証情報を取得している。参照 コンフィギュレーション設定と優先順位

環境変数や他の場所から認証情報を取得していないことを確認してください。 AWS CLIは、次の順序でクレデンシャルと構成設定を探します。

  • コマンドラインオプション - リージョン、出力形式、プロファイルをコマンドオプションとして指定し、デフォルトの設定を上書きすることが可能です。
  • 環境変数 - AWS_ACCESS_KEY_ID、AWS_SECRET_ACCESS_KEY、など。
  • AWS認証情報ファイル - Linux、OS X、またはUnixでは~/.aws/credentialsに、WindowsではC: \Users\USERNAME .awscredentialsに置かれています。このファイルには、デフォルトのプロファイルの他に、複数の名前付きプロファイルを含めることができます。
  • CLI設定ファイル - Linux、OS X、Unixでは~/.aws/configに、WindowsではC: \Users³³.aws³³config に配置されます。このファイルには、デフォルトのプロファイル、名前付きプロファイル、およびそれぞれのCLI固有の設定パラメータを含めることができます。
  • インスタンスプロファイルの認証情報 - これらの認証情報は、インスタンスロールが割り当てられたEC2インスタンスで使用することができ、Amazon EC2メタデータサービスを通じて配信されます。