13

我正在使用此命令上传 ssl 文件。

aws iam upload-server-certificate --server-certificate-name CertificateName --certificate-body file://public_key_certificate_file --private-key  file://privatekey.pem

我还放置了一个配置文件, ~/.aws/config 值是

[default]

aws_access_key_id = with my own key 

aws_secret_access_key = with my own key

region = ********

但它给了我这个错误:

发生客户端错误 (AccessDenied):用户:arn:aws:iam::419351825566:user/ ** 无权执行:iam:UploadServerCertificate on resource:arn:a ws:iam::419351825566:server-certificate/* * .crt

我没有正确编写 AWS 凭证吗?还是我没有访问权限?我也不确定我写的区域是否正确..

4

1 回答 1

22

自 2015 年 11 月起,拥有一个具有“IAMFullAccess”策略的 IAM 用户将使这项工作正常进行。您可以创建一个新用户来拥有该唯一策略,或者您可以使用现有用户并添加策略。

注意:上传 SSL 文件后,如果您想再次收紧权限/安全性,可以删除 IAMFullAccess 策略。

新用户工作流程:

  1. 在 AWS 的巨型服务菜单中,转到 IAM
  2. 在左侧边栏中,单击用户
  3. 单击蓝色的“创建新用户”按钮
  4. 输入用户名,例如“ssl-uploader”,然后创建用户
  5. 记下 AWS 为您提供的密钥。您以后无法检索这些(您必须返回到第 1 步并创建一个不同的用户)。
  6. IAMFullAccess策略分配给新用户
  7. 在命令行中,执行aws configure并回答问题:
    • AWS Access Key ID:- 来自第 5 步的访问密钥
    • AWS Secret Access Key:- 来自第 5 步的密钥
    • Default region name:- 对我来说没关系,接受默认值None
    • Default output format:- 对我来说没关系,接受默认值None
  8. 运行问题中提到的命令,它应该可以工作。您可能需要记下它返回的 JSON,以备日后需要时使用。
于 2015-11-18T19:59:11.673 回答