2017-01-12 6 views
2

OSXでAWS CLIを使い始めようとしています。私はawsをpip経由でインストールしました。私はIAMで新しいユーザーを作成し、予め組み込まれたAdministratorAccess - AWS Managed policyポリシーを添付しました。次に、アクセスキーIDとシークレットアクセスキーがコピーされました。新しいIAM管理者ユーザーが「この操作を実行する権限がありません」と表示されます

私が作成したユーザーは、どのグループにも属していません。彼らのポリシーは次のようになります。

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

次に、私はコマンドラインからaws configureを走り、アクセスキーと私はコピーされた秘密鍵を入力し、プラスeu-west-1の地域コード(IAM以来、関連する可能性は低いようですユーザーはグローバル)、出力形式はtextです。

それから私は、新しいグループを設定するには、簡単なテストコマンドを実行しようとしている:

A client error (UnauthorizedOperation) occurred when calling the CreateSecurityGroup operation: You are not authorized to perform this operation.

その他のコマンドは同じように失敗:

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

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

私の唯一の理論は、キーにコピー&ペーストエラーがあることですが、私は上記の2回以上のプロセスをやってみたのと同じ方法で失敗しました。私は間違って何をしていますか?プロセスのどの部分が失敗しているのかをデバッグする方法はありますか?

+0

「aws configure」を実行すると、AWS CLIにどの領域が操作されるかが伝えられます。ユーザーはグローバルです。しかし、セキュリティグループのリソースは地域固有のものです。 –

+0

取得しているエラーはコピー/ペーストの問題ではありません。これはパーミッションエラーです。 CLIで使用している資格情報には、セキュリティグループを作成する権限がありません。アクセスキー/シークレットが悪い場合は、別のエラーが発生します。 –

+0

ポリシーをユーザーに適用した後、コマンドを実行するまでにどれくらい待っていましたか?アクセス許可の変更がシステム全体に伝播するまでに数分かかることがあります。 –

答えて

2

AWS CLIが別の場所から資格情報を取得しています。 Configuration Settings and Precedence

環境変数または他の場所から資格情報を取得していないことを確認してください。 AWS CLIは、次の順序で資格情報と構成設定を探します:

  • コマンドラインオプション - 地域、出力形式とプロファイルは、デフォルトの設定を上書きするコマンドオプションとして指定することができます。
  • 環境変数 - などAWS_ACCESS_KEY_ID、AWS_SECRET_ACCESS_KEY、
  • AWSの資格情報をファイル - Linuxでは、OS X、またはUnix上、またはCで〜/ .aws /資格情報にあり:\ Users \ユーザーUSERNAMEがオン\資格情報を.aws Windows。このファイルには、デフォルトのプロファイルに加えて複数の名前付きプロファイルを含めることができます。
  • 通常、Linux、OS X、Unixの場合は〜/ .aws/config、Windowsの場合はC:¥Users¥USERNAME .aws¥configにあります。このファイルには、プロファイルという名前のデフォルト・プロファイルと、それぞれのCLI固有の構成パラメーターを含めることができます。
  • インスタンスプロファイルの資格情報 - これらの資格情報は、割り当てられたインスタンスロールを持つEC2インスタンスで使用でき、Amazon EC2メタデータサービスを通じて提供されます。
+0

はい、環境変数を設定しました。ありがとうございました! – Richard

0

VPCにセキュリティグループを作成していないことを確認します。この場合、デフォルトのVPC IDをパラメータとして渡す必要があります。

また、様々な領域でこれを試してみてください。

aws configure set region <regions> 
aws ec2 describe-security-groups 

注:AWSは、地域のほとんどでデフォルトVPCの提供を開始しました。

これは、問題の解決に役立ちます。

+0

これが当てはまる場合、エラーは不正なリクエストであり、「UnauthorizedOperation」ではありません。 –

関連する問題