使用 base64 编码的签名验证实例身份文档 - Amazon Elastic Compute Cloud
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

使用 base64 编码的签名验证实例身份文档

本主题说明如何使用 base64 编码的签名和 AWS RSA 公有证书验证实例身份文档。

重要

要使用 base64 编码的签名验证实例身份文档,您必须从 AWS Support 请求 AWS RSA 公有证书。

使用 base64 编码的签名和 AWS RSA 公有证书验证实例身份文档

  1. 连接到实例。

  2. 从实例元数据中检索 base64 编码的签名,将其转换为二进制文件,然后将其添加到名为 signature 的文件。根据实例使用的 IMDS 版本,使用以下命令之一。

    IMDSv2
    $ TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"` \ && curl -H "X-aws-ec2-metadata-token: $TOKEN" -v http://169.254.169.254/latest/dynamic/instance-identity/signature | base64 -d > signature
    IMDSv1
    $ curl -s http://169.254.169.254/latest/dynamic/instance-identity/signature | base64 -d > signature
  3. 从实例元数据中检索明文 实例身份文档,并将其添加到名为 document 的文件。根据实例使用的 IMDS 版本,使用以下命令之一。

    IMDSv2
    $ TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"` \ && curl -H "X-aws-ec2-metadata-token: $TOKEN" -v http://169.254.169.254/latest/dynamic/instance-identity/document > document
    IMDSv1
    $ curl -s http://169.254.169.254/latest/dynamic/instance-identity/document > document
  4. 将您从 AWS Support 收到的 AWS RSA 公有证书添加到名为 certificate 的文件。

  5. 从您收到的来自 AWS Support 的证书中提取公有密钥,并将其保存到名为 key 的文件。

    $ openssl x509 -pubkey -noout -in certificate > key
  6. 使用 OpenSSL dgst 命令来验证实例身份文档。

    $ openssl dgst -sha256 -verify key -signature signature document

    如果签名有效,则会显示 Verified OK 消息。如果无法验证签名,请联系 AWS Support。