使用 Java 和 SPARQL 以及签名版本 4 签名(RDF4J 和 Jena)连接到 Neptune - Amazon Neptune
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用 Java 和 SPARQL 以及签名版本 4 签名(RDF4J 和 Jena)连接到 Neptune

本节介绍如何使用具有签名版本 4 身份验证的 RDF4J 或 Apache Jena 连接到 Neptune。

先决条件
  • Java 8 或更高版本。

  • Apache Maven 3.3 或更高版本。

    有关在运行 Amazon Linux 的 EC2 实例上安装这些先决条件的信息,请参阅 Amazon Linux EC2 上的先决条件

  • 用于对请求进行签名的 IAM 凭证。有关更多信息,请参阅《Amazon SDK for Java 开发人员指南》中的使用默认凭证提供程序链

    注意

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

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

  • SERVICE_REGION 变量设置为以下内容之一,以指示 Neptune 数据库实例的区域:

    • 美国东部(弗吉尼亚州北部):us-east-1

    • 美国东部(俄亥俄州):us-east-2

    • 美国西部(北加利福尼亚):us-west-1

    • 美国西部(俄勒冈州):us-west-2

    • 加拿大(中部):ca-central-1

    • 南美洲(圣保罗):sa-east-1

    • 欧洲地区(斯德哥尔摩):eu-north-1

    • 欧洲地区(爱尔兰):eu-west-1

    • 欧洲地区(伦敦):eu-west-2

    • 欧洲地区(巴黎):eu-west-3

    • 欧洲地区(法兰克福):eu-central-1

    • 中东(巴林):me-south-1

    • 中东(阿联酋):me-central-1

    • 以色列(特拉维夫):il-central-1

    • 非洲(开普敦):af-south-1

    • 亚太地区(香港):ap-east-1

    • 亚太地区(东京):ap-northeast-1

    • 亚太地区(首尔):ap-northeast-2

    • 亚太地区(新加坡):ap-southeast-1

    • 亚太地区(悉尼):ap-southeast-2

    • 亚太地区(孟买):ap-south-1

    • 中国(北京):cn-north-1

    • 中国(宁夏):cn-northwest-1

    • Amazon GovCloud (美国西部):us-gov-west-1

    • Amazon GovCloud (美国东部):us-gov-east-1

使用 RDF4J 或 Apache Jena 以及签名版本 4 签名连接到 Neptune
  1. 从中克隆示例存储库 GitHub。

    git clone https://github.com/aws/amazon-neptune-sparql-java-sigv4.git
  2. 更改到克隆的目录中。

    cd amazon-neptune-sparql-java-sigv4
  3. 通过检出具有最新标签的分支获取项目的最新版本。

    git checkout $(git describe --tags `git rev-list --tags --max-count=1`)
  4. 输入以下命令之一以编译和运行示例代码。

    your-neptune-endpoint替换为您的 Neptune 数据库实例的主机名或 IP 地址。默认端口为 8182。

    注意

    有关查找 Neptune 数据库实例的主机名的信息,请参阅连接到 Amazon Neptune 端点部分。

    Eclipse RDF4J

    输入以下内容以运行 RDF4J 示例。

    mvn compile exec:java \ -Dexec.mainClass="com.amazonaws.neptune.client.rdf4j.NeptuneRdf4JSigV4Example" \ -Dexec.args="https://your-neptune-endpoint:port"
    Apache Jena

    输入以下内容以运行 Apache Jena 示例。

    mvn compile exec:java \ -Dexec.mainClass="com.amazonaws.neptune.client.jena.NeptuneJenaSigV4Example" \ -Dexec.args="https://your-neptune-endpoint:port"
  5. 要查看示例的源代码,请参阅 src/main/java/com/amazonaws/neptune/client/ 目录中的示例。

要在您自己的 Java 应用程序中使用 SigV4 签名驱动程序,请将 amazon-neptune-sigv4-signer Maven 程序包添加到 pom.xml<dependencies> 部分。我们建议您从示例开始着手。