浏览器单点登录
Neo4j 浏览器支持单点登录 (SSO) 提供商。这是一项企业功能,需要特定的配置以及 (自托管的) Neo4j Server v4.4 或更高版本。此外,您还需要一个已配置的兼容 SSO 提供商(本地或外部)。有关配置的更多信息,请参阅 操作手册 → OIDC 配置设置。
对于自托管 Neo4j Server v4.4+ 以外的部署,SSO 可以通过独立的 OAuth 插件进行配置,这需要专业服务团队的参与。有关专业服务的更多信息,请参阅 https://neo4j.ac.cn/professional-services/。 |
目前支持的提供商包括 OpenID Connect (OIDC) OAuth 2.0 提供商 Google、Keycloak、Microsoft Azure AD 和 Okta。
浏览器支持两种授权流程
-
带有 PKCE 的授权码流程。
-
隐式流程。
强烈建议使用 PKCE 以确保安全性。有关 OpenID Connect 和 OAuth 的更多信息,请访问 https://openid.net/connect/。 |
安全信息应始终通过加密传输进行交换,因此应使用 HTTPS。单点登录不支持混合 HTTP/HTTPS 流程。 |
配置好 SSO 提供商后,您需要配置 Neo4j 以使用 OpenID Connect。这可以通过根据 neo4j.conf
文件中的说明来更新 操作手册 → 配置 Neo4j 以使用 OpenId Connect 来完成。
请确保避免 neo4j.conf
文件中出现重复条目。
浏览器需要知道可用的身份提供商。当与 Neo4j v4.4+ 一起使用时,这在 neo4j.conf
文件中指定,如上所述。
如前所述,使用早期版本 Neo4j 的部署需要独立的 OAuth 插件和专业服务的协助。但是,在这种情况下,可以通过 URL 参数 discoveryURL
来指定身份提供商,该参数定义了一个指向包含 SSO 提供商的 .json 文件的 URL。
浏览器示例
https://<browser-server-host>:<http-port>?discoveryURL=https://webhost.com/public/discovery.json
为方便起见,可以使用 URL 参数 sso_redirect=<idp_id>
自动触发 SSO 流程,而无需在浏览器 UI 中点击“使用 SSO 登录”按钮。