本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用带有签名版本 4 签名的 Java 和 SPARQL 连接Neptune(RDF4J 和 Jena)
本节介绍如何使用具有 Signature 版本 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
非洲(开普敦):
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 或带签名版本 4 的 Apache Jena 连接到Neptune
-
从中克隆示例存储库 GitHub。
git clone https://github.com/aws/amazon-neptune-sparql-java-sigv4.git
-
更改到克隆的目录中。
cd amazon-neptune-sparql-java-sigv4
-
通过检出具有最新标签的分支获取项目的最新版本。
git checkout $(git describe --tags `git rev-list --tags --max-count=1`)
-
输入以下命令之一以编译和运行示例代码。
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
" 要查看示例的源代码,请参阅
src/main/java/com/amazonaws/neptune/client/
目录中的示例。
要在您自己的 Java 应用程序中使用 SigV4 签名驱动程序,请将 amazon-neptune-sigv4-signer
Maven 程序包添加到 pom.xml
的 <dependencies>
部分。我们建议您从示例开始着手。