安全连接
VPC 隔离
AuraDB 虚拟专用云 AuraDS 企业版
AuraDB 虚拟专用云和 AuraDS 企业版运行在专用云账户 (AWS)、订阅 (Azure) 或项目 (GCP) 中,以实现部署的完全隔离。
额外的 VPC 边界使您能够在服务的一个隔离部分中运行,您的处理、网络和存储在那里得到进一步保护。
Aura 控制台运行在与 Aura 其余部分分开的单独 VPC 中。
网络访问
Aura 实例可以是公开可访问的、完全私有的,或者两者兼而有之。要配置此设置,您需要被授权访问运行和处理这些实例的基础架构部分以及用于在数据库和应用程序的 VPC 之间建立安全连接的网络。这包括能够通过云提供商的私有链路和私有终结点进行连接的能力。
如果您的 Aura 实例是公开的,则允许流量遍历公共互联网,并且可以使用正确的用户名和密码访问它们。
要使您的实例完全私有,请关闭公共流量,使用云提供商的网络,并在您的 VPC 内创建私有终结点,这为您提供了与 Aura 的私有连接。连接到您的数据库的唯一方法是从您的网络内部(您在 AWS/Azure/GCP 账户中的 VPC)使用您选择的内部 IP 地址和您创建的 DNS 记录。
要选择网络访问设置,请转到**Aura 控制台** > **安全** > **网络访问**。
私有终结点
私有终结点是您自己的 VPC 内的网络接口,只能在您的私有网络内访问。云提供商通过其网络将它们连接到 Neo4j Aura。根据设计,它们不会暴露在公共互联网上,确保关键服务只能通过私有、安全的网络访问。
单个私有链路连接适用于一个区域中的所有实例。因此,如果您为us-east-1
设置了一个,那么这些网络连接将适用于该区域中的所有实例。您可以为托管在第二个区域(例如us-west-1
)但仍位于同一 Aura 项目内的应用程序设置第二个私有链路连接。
AWS 私有终结点
AuraDB 虚拟专用云 AuraDS 企业版
AuraDB 虚拟专用云和 AuraDS 企业版支持使用AWS PrivateLink在 AWS 上使用私有终结点。
激活后,您可以在 VPC 中创建一个连接到 Aura 的终结点。
有关分步指南,请参阅如何使用 AWS PrivateLink 配置 Neo4j Aura博文。

在 VPC 内运行 Neo4j 工作负载的所有应用程序都直接路由到 Aura 中的隔离环境,而无需遍历公共互联网。然后,您可以禁用公共流量,确保所有到实例的流量都保留在 VPC 内的私有状态。
|
通过私有终结点访问浏览器和 Bloom
要通过浏览器或 Bloom 连接到您的实例,您必须使用专用 VPN。这是因为,当您禁用对实例的公共访问权限时,这将应用于所有连接,包括您在使用浏览器或 Bloom 时从计算机进行的连接。
在没有私有终结点的情况下,您可以通过互联网访问浏览器和 Bloom

当您已启用私有终结点**并且**已禁用公共互联网访问时,您将无法再通过互联网将浏览器或 Bloom 连接到您的实例

要继续访问浏览器和 Bloom,您可以在 VPC 中配置 VPN(虚拟专用网络),并通过 VPN 连接到浏览器和 Bloom。
要通过 VPN 访问 Bloom 和浏览器,您必须确保
|

启用私有终结点
要使用 AWS PrivateLink 启用私有终结点
-
从控制台的侧边栏菜单中选择**网络访问**。
-
选择**新的网络访问配置**,然后按照设置说明进行操作。
您将需要一个具有创建、修改、描述和删除终结点权限的 AWS 账户。有关更多信息,请参阅AWS 文档。
GCP 私有终结点
AuraDB 虚拟专用云 AuraDS 企业版
AuraDB 虚拟专用云和 AuraDS 企业版支持使用GCP Private Service Connect在 GCP 上使用私有终结点。
激活后,您可以在 VPC 中创建一个连接到 Aura 的终结点。

在 VPC 内运行 Neo4j 工作负载的所有应用程序都直接路由到 Aura 中的隔离环境,而无需遍历公共互联网。然后,您可以禁用公共流量,确保所有到实例的流量都保留在 VPC 内的私有状态。
|
通过私有终结点访问浏览器和 Bloom
要通过浏览器或 Bloom 连接到您的实例,您必须使用专用 VPN。这是因为,当您禁用对实例的公共访问权限时,这将应用于所有连接,包括您在使用浏览器或 Bloom 时从计算机进行的连接。
在没有私有终结点的情况下,您可以通过互联网访问浏览器和 Bloom

当您已启用私有终结点并已禁用公共互联网访问时,您将无法再通过互联网将浏览器或 Bloom 连接到您的实例

要继续访问浏览器和 Bloom,您可以在 VPC 中配置GCP Cloud VPN(虚拟专用网络),并通过 VPN 连接到浏览器和 Bloom。
要通过 VPN 访问 Bloom 和浏览器,您必须确保
|

启用私有终结点
要使用 GCP Private Service Connect 启用私有终结点
-
从控制台的侧边栏菜单中选择**网络访问**。
-
选择**新的网络访问配置**,然后按照设置说明进行操作。
有关所需的权限和角色,请参阅GCP 文档。
Azure 专用终结点
AuraDB 虚拟专用云 AuraDS 企业版
AuraDB Virtual Dedicated Cloud 和 AuraDS Enterprise 支持使用 Azure 私有链接 在 Azure 上创建专用终结点。
激活后,您可以在您的虚拟网络 (VNet) 中创建一个连接到 Aura 的终结点。

所有在 VNet 内运行 Neo4j 工作负载的应用程序都将直接路由到您在 Aura 中的隔离环境,而无需穿越公共互联网。然后,您可以禁用公共流量,确保所有到实例的流量都保持对您的 VNet 私有。
|
通过专用终结点访问浏览器和 Bloom
要通过浏览器或 Bloom 连接到您的实例,您必须使用专用 VPN。这是因为,当您禁用对实例的公共访问权限时,这将应用于所有连接,包括您在使用浏览器或 Bloom 时从计算机进行的连接。
在没有私有终结点的情况下,您可以通过互联网访问浏览器和 Bloom

当您已启用私有终结点并已禁用公共互联网访问时,您将无法再通过互联网将浏览器或 Bloom 连接到您的实例

要继续访问浏览器和 Bloom,您可以在您的 VNet 中配置 VPN(虚拟专用网络)并通过 VPN 连接到浏览器和 Bloom。
要通过 VPN 访问 Bloom 和浏览器,您必须确保
|

启用专用终结点
要使用 Azure 私有链接启用专用终结点
-
从控制台的侧边栏菜单中选择**网络访问**。
-
选择**新的网络访问配置**,然后按照设置说明进行操作。
请参阅 Azure 文档 以了解所需的权限和角色。
私有链接
AuraDB Virtual Dedicated Cloud
此私有链接部分与云无关,因此适用于所有云。私有链接在您的应用程序和 AuraDB 之间提供安全的网络连接,而不会将流量暴露给公共互联网。
“私有链接”一词指的是
-
私有服务连接 = Google Cloud 平台
-
私有链接 = AWS
-
私有链接 = Azure
以下步骤说明了建立私有链接连接以安全地将您的应用程序连接到 AuraDB Virtual Dedicated Cloud 环境的过程。
本示例中使用了 dbid: abcd1234 和 orch-id: 0000。这些在您的 AuraDB Virtual Dedicated Cloud 环境中有所不同。 |
-
应用程序初始化到 neo4j+s://abcd1234.production-orch-0000.neo4j.io 的驱动程序连接。
-
然后,网络层查询 DNS 服务器以将完全限定域名 (FQDN)(在本例中为 abcd1234.production-orch-0000.neo4j.io)解析为其相应的 IP 地址。
-
查询云虚拟网络私有 DNS,它根据创建的通配符 DNS A 记录将 FQDN 解析为 10.10.10.10:*.production-orch-0000.neo4j.io → 10.10.10.10
-
应用程序的连接被定向到 10.10.10.10,它是私有链接终结点。从那里,私有链接终结点通过私有链接将网络连接转发到私有入口。
-
私有入口从 FQDN 中提取 dbid 并将连接定向到相应的 Aura 实例(dbid: abcd1234)。
-
Aura 实例通过将 Neo4j 集群路由表发送回应用程序进行响应,该表包含有关实例及其角色的信息。
-
根据事务类型(读或写),驱动程序选择合适的实例来执行读或写事务。代码能够以这种方式将事务定向到相应的实例。
-
与之前类似,查询云虚拟网络私有 DNS 并将 FQDN 解析为 10.10.10.10。应用程序的连接被发送到私有链接终结点 (10.10.10.10),该终结点通过私有链接将网络连接转发到私有入口。然后,私有入口将连接定向到 dbid: abcd1234 的 Aura 实例。
-
最后,写事务被接收并在 dbid: abcd1234 的 Aura 实例中执行。
abcd1234.production-orch-0000.neo4j.io |
角色:写 |
abcd1234.production-orch-0000.neo4j.io |
角色:读 |
abcd1234.production-orch-0000.neo4j.io |
角色:读 |
支持的 TLS 密码套件
为了提高安全性,客户端通信通过 TLS v1.2 和 TLS v1.3 进行。
AuraDB 有一份在 TLS 握手期间接受的密码套件受限列表,并且不接受所有可用的密码套件。以下列表符合 IANA、OpenSSL 和 GnuTLS 库的安全建议。
TLS v1.3
-
TLS_CHACHA20_POLY1305_SHA256 (RFC8446)
-
TLS_AES_128_GCM_SHA256 (RFC8446)
-
TLS_AES_256_GCM_SHA384 (RFC8446)
TLS v1.2
-
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 (RFC5288)
-
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (RFC5289)
-
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (RFC5289)
-
TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 (RFC7905)
-
TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 (RFC5288)