使用 Amazon Identity and Access Management 身份验证连接到 Amazon Neptune 数据库 - Amazon Neptune
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

使用 Amazon Identity and Access Management 身份验证连接到 Amazon Neptune 数据库

启用了 IAM 数据库身份验证的 Amazon Neptune 资源需要使用 Amazon 签名版本 4 对所有 HTTP 请求进行身份验证。有关使用 Amazon 签名版本 4 对请求进行签名的一般信息,请参阅签署 Amazon API 请求

Amazon 签名版本 4 是将身份验证信息添加到 Amazon 请求的过程。出于安全考虑,大多数 Amazon 请求都必须使用访问密钥(包括访问密钥 ID 和秘密访问密钥)进行签名。

注意

如果您使用的是临时凭证,这些凭证(包括会话令牌)将在指定时间间隔后到期。

在请求新凭证时,您必须更新您的会话令牌。有关更多信息,请参阅使用临时安全凭证以请求对 Amazon 资源的访问权限

重要

使用基于 IAM 的身份验证访问 Neptune 需要创建 HTTP 请求并自己对这些请求签名。

签名版本 4 的工作原理
  1. 您创建一个规范请求。

  2. 您使用规范请求和一些其他信息来创建要签署的字符串。

  3. 您使用自己的 Amazon 秘密访问密钥来生成一个签名密钥,并使用该签名密钥以及要签署的字符串来创建签名。

  4. 您将生成的签名添加到 HTTP 请求的标头中或者作为查询字符串参数添加。

Neptune 收到请求后,将执行完成的相同步骤来计算签名。之后,Neptune 会将计算得到的签名与在请求中发送的签名进行比较。如果签名匹配,则处理请求。如果签名不匹配,则拒绝请求。

有关使用 Amazon 签名版本 4 对请求签名的一般信息,请参阅《Amazon Web Services 一般参考》签名版本 4 签名过程

以下部分包含示例,演示如何将签名请求发送到启用了 IAM 身份验证的 Neptune 数据库实例的 Gremlin 和 SPARQL 端点。