本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 Java 和 SPARQL 的 IAM 身份验证连接到亚马逊 Neptune 数据库
本节介绍如何使用带有签名版本 4 身份验证的 RDF4 J 或 Apache Jena 连接到 Neptune。
先决条件
Java 8 或更高版本。
Apache Maven 3.3 或更高版本。
有关在运行 Amazon Linux 的 EC2 实例上安装这些先决条件的信息,请参阅使用 IAM 身份验证连接 Amazon Neptune 数据库的先决条件。
-
用于对请求进行签名的 IAM 凭证。有关更多信息,请参阅《适用于 Java 的 Amazon SDK 开发人员指南》中的使用默认凭证提供程序链。
注意
如果您使用的是临时凭证,这些凭证(包括会话令牌)将在指定时间间隔后到期。
在请求新凭证时,您必须更新您的会话令牌。有关更多信息,请参阅 IAM 用户指南中的使用临时安全证书请求 Amazon 资源访问权限。
-
将
SERVICE_REGION变量设置为以下内容之一,以指示 Neptune 数据库实例的区域:美国东部(弗吉尼亚州北部):
us-east-1美国东部(俄亥俄州):
us-east-2美国西部(北加利福尼亚):
us-west-1美国西部(俄勒冈州):
us-west-2加拿大(中部):
ca-central-1加拿大西部(卡尔加里):
ca-west-1南美洲(圣保罗):
sa-east-1欧洲地区(斯德哥尔摩):
eu-north-1欧洲(西班牙):
eu-south-2欧洲地区(爱尔兰):
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-northeast-3亚太地区(新加坡):
ap-southeast-1亚太地区(悉尼):
ap-southeast-2亚太地区(雅加达):
ap-southeast-3亚太地区(墨尔本):
ap-southeast-4亚太地区(马来西亚):
ap-southeast-5亚太地区(孟买):
ap-south-1中国(北京):
cn-north-1中国(宁夏):
cn-northwest-1Amazon GovCloud (美国西部):
us-gov-west-1Amazon GovCloud (美国东部):
us-gov-east-1
使用签名版本 4 签名的 RDF4 J 或 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 J RDF4
输入以下内容以运行 RDF4 J 示例。
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> 部分。我们建议您从示例开始着手。