【问题标题】:How to download an EC2 X.509 certificate with an IAM User account?如何使用 IAM 用户账户下载 EC2 X.509 证书?
【发布时间】:2012-02-18 04:47:38
【问题描述】:

通过 AWS Identity and Access Management,我的 CTO 的 AWS 账户拥有一个用户账户(他有一些钱)。

我想使用这个 IAM 用户帐户设置我自己的实例以通过 ssh 连接到它并运行一些 BeautifulSoup python 脚本。

但是,在this tutorial 之后,当我到达Security Credentials 页面上我需要去的部分时,我无法访问此页面,并且我被告知我没有查看它的权限。

我向 IAM 经理检查了我的权限,并且我拥有管理权限,这是可能的最高权限(在我看来)。

我可以做些什么来获得这个 X.509 证书?

【问题讨论】:

    标签: amazon-ec2 amazon-web-services x509 amazon-iam


    【解决方案1】:

    前言

    首先,您可能需要重新考虑是否真的需要这些 X.509 证书 - 该教程原则上是正确的:

    共有三种类型:访问密钥、X.509 证书和密钥对。 第一种和第二种类型允许您连接到 Amazon API。 哪种类型的凭证取决于您使用的 API 和工具。 一些 API 和工具支持这两种选项,而另一些只支持 一个。

    但是,如今大多数现代 API 和工具仅通过访问密钥而不是 X.509 证书与 AWS 进行交互。

    不幸的是,本教程所基于的 EC2 API 工具并非如此,因为它(大部分)仍然基于较旧的 EC2 SOAP API,因此确实需要使用 X.509 证书。罢工>

    更新:EC2 API 工具同时支持 AWS 访问密钥和 deprecated using X.509 certificates 相应地:

    虽然我们不鼓励它,但在有限的时间内你仍然可以使用 EC2_PRIVATE_KEY 和 EC2_CERT 而不是 AWS_ACCESS_KEY 和 AWS_SECRET_KEY。有关详细信息,请参阅 Common Options 中的已弃用选项 用于 Amazon Elastic Compute Cloud CLI 中的 API 工具 参考。如果您指定两组凭据,则命令行 工具使用访问密钥 ID 和秘密访问密钥。

    另类

    不过,您可能想先看看另一种选择:如果您熟悉 Python,我强烈推荐出色的 botoAmazon Web Services 提供的当前和未来基础设施服务的集成接口),它与访问密钥配合得很好,提供与 EC2 API 工具(以及大多数其他 AWS API)几乎相同的功能集,并且由于针对较新的 AWS REST API,执行速度明显更快仅限。

    解决方案

    AWS Identity and Access Management (IAM) 不支持访问实际的 AWS 账户,它只涵盖了AWS Management Console,当然还有大多数 AWS API。您需要使用 AWS 账户的登录名和密码(即账户所有者的)登录才能访问 Security Credentials 页面。

    虽然不再推荐这样做(请参阅IAM Concepts 中的安全凭证部分):

    [...] 当您创建 AWS 账户时,AWS 会提供 默认情况下,AWS 帐户拥有自己的秘密访问密钥和访问密钥 ID。 AWS 账户可以使用它们对 AWS 进行 API 调用。 我们希望 您不会定期使用这些凭据,但会使用它们 只是为了最初为您的管理员设置一个管理员组 组织。我们建议所有进一步的 API 交互 您的 AWS 账户和您的 AWS 资源处于用户级别(例如 例如,使用用户的安全凭证)。 [强调我的]

    但是,您仍然可以通过使用您自己的证书来实现您的目标,如 X.509 证书部分所述:

    虽然您可以使用 IAM 创建访问密钥,但您不能使用 IAM 创建签名证书。但是,您可以使用免费的第三方 OpenSSL 等工具来创建证书。 [...] 在你拥有 签名证书,您必须将其上传到 IAM; [...]

    如何实际执行后者在Uploading a Signing Certificate 中进行了说明。

    【讨论】:

    • 感谢您花时间解释这一切。现在对我来说清楚多了。我对 python 很满意,我已经涉足过 boto,我想我会使用它,我认为使用 ec2-api-tools 留在 shell 中会更容易,但我正在审查我对此的判断.谢谢!
    猜你喜欢
    • 1970-01-01
    • 2018-09-13
    • 2012-03-16
    • 2020-05-10
    • 2011-10-25
    • 1970-01-01
    • 2021-04-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多