通常情况下,如果 AWS Lambda (NodeJS) 调用 AWS Neptune 遇到 403 错误,可能是由于 Lambda IAM 角色没有 Neptune 权限所致。可以如下配置 Lambda IAM 角色:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"neptune-db:*"
],
"Resource": [
"arn:aws:neptune-db:::*"
]
}
]
}
注意将 和 替换为你的实际信息。如果需要更具体的权限控制,可以根据实际情况添加对应的权限,例如:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"neptune-db:Connect",
"neptune-db:ExecuteStatement",
"neptune-db:GetQueryExecution",
"neptune-db:GetQueryResults",
"neptune-db:CancelQueryExecution",
"neptune-db:DescribeDbClusters",
"neptune-db:DescribeDbInstances"
],
"Resource": [
"arn:aws:neptune-db:::*"
]
}
]
}
最后可以根据配置好的 IAM 角色重新运行 Lambda 函数,看看是否能够正常调用 Neptune。