|
本文档涉及 Neo4j Labs 旗下不受支持的 NeoDash 版本。如需使用受支持的 NeoDash 产品,请参阅 NeoDash 商业版。 |
配置
|
本文档涉及 Neo4j Labs 旗下不受支持的 NeoDash 版本。如需使用受支持的 NeoDash 产品,请参阅 NeoDash 商业版。 |
在使用自定义 NeoDash 部署时,有多个设置可以配置。这些设置主要与独立模式 (Standalone Mode) 和 SSO 配置相关。
对于简单的(非 Docker 化)部署,在构建应用程序后,可以通过修改 dist/config.json 来更改这些配置参数。如果是使用 Docker 镜像,则可以通过环境变量传递这些参数。有关 Docker 部署的更多信息,请参阅独立模式。
NeoDash 的示例配置(默认,在编辑器模式下运行)如下所示:
{
"ssoEnabled": false,
"ssoProviders": [],
"ssoDiscoveryUrl": "https://example.com",
"standalone": false,
"standaloneProtocol": "neo4j+s",
"standaloneHost": "localhost",
"standalonePort": "7687",
"standaloneDatabase": "neo4j",
"standaloneDashboardName": "My Dashboard",
"standaloneDashboardDatabase": "dashboards",
"standaloneDashboardURL": "",
"standaloneAllowLoad": false,
"standaloneLoadFromOtherDatabases": false,
"standaloneMultiDatabase": false,
"standaloneDatabaseList": "neo4j"
"loggingMode": "0",
"loggingDatabase": "logs",
"customHeader": "",
}
配置选项
| 名称 | 类型 | 默认值 | 描述 |
|---|---|---|---|
ssoEnabled |
boolean |
false |
如果启用,允许用户使用 SSO 连接到 Neo4j。这需要设置有效的 ssoDiscoveryUrl。 |
ssoProviders |
列表 |
[] |
当数据库上使用多个 SSO 提供程序时,您可以配置在 Neodash 上使用的提供程序列表(按 ID)。如果为空,则显示所有提供程序。 |
ssoDiscoveryUrl |
string |
如果 ssoEnabled 为 true 且启用了独立模式,则该 URL 用于从此处检索 SSO 身份验证配置。 |
|
standalone |
boolean |
false |
决定是以编辑器模式(false)还是阅读器模式(true)运行 NeoDash。“阅读器模式 (Reader mode)”和“独立模式 (Standalone mode)”这两个术语可互换使用。 |
standaloneProtocol |
string |
neo4j |
在独立模式下运行时,Neo4j 驱动程序使用的协议。应设置为 |
standaloneHost |
string |
localhost |
在独立模式下运行时,要连接的主机名。这应该仅包含主机名,不包含协议或端口。 |
standalonePort |
string |
7687 |
在独立模式下运行时,要连接的 Bolt 端口。 |
standaloneDatabase |
string |
neo4j |
在独立模式下运行时,用于报告的数据库。报告中使用的 Cypher 查询将从该数据库读取数据。 |
standaloneUsername ⚠️ |
string |
… |
一个隐藏的配置参数,允许您默认设置独立模式的用户名。请记住,这存在安全风险,因为它会将 Neo4j 用户名暴露给任何可以访问 NeoDash 部署的人。 |
standalonePassword ⚠️ |
string |
… |
一个隐藏的配置参数,允许您默认设置独立模式的密码。如果设置了此值,连接也会自动建立。请记住,这存在安全风险,因为它会将 Neo4j 用户名暴露给任何可以访问 NeoDash 部署的人。 |
standaloneDashboardName |
string |
我的仪表板 |
在独立模式下运行时要加载的仪表板的确切名称(区分大小写)。这必须是作为图中的节点保存的仪表板。 |
standaloneDashboardDatabase |
string |
neo4j |
包含保存的仪表板节点的 Neo4j 数据库名称。默认为 neo4j,除非您使用的是 Neo4j 企业版,该版本允许您使用多个数据库。 |
standaloneDashboardURL |
string |
neo4j |
如果您没有将仪表板保存在 Neo4j 中,并且希望使用来自 URL 的仪表板运行独立模式部署,请将此参数设置为指向仪表板 JSON 的完整 URL。 |
standaloneAllowLoad |
boolean |
false |
如果设置为 yes,“加载仪表板”按钮将在独立模式下启用,允许用户从 Neo4J 加载其他仪表板。此参数默认情况下为 false,除非您使用的是 Neo4j 企业版,该版本允许您使用多个数据库。注意:当在独立模式下启用“加载”时,仅数据库可用作源,文件不可用。 |
standaloneLoadFromOtherDatabases |
boolean |
false |
如果 standaloneAllowLoad 设置为 true,此参数决定是否允许用户从 standaloneDashboardDatabase 中定义的数据库以外的其他数据库加载仪表板。如果 standaloneAllowLoad 设置为 false,则此参数无效。 |
standaloneMultiDatabase |
boolean |
false |
如果此参数设置为 true,独立配置将忽略 standaloneDatabase 参数,并允许用户在登录屏幕中选择要连接的数据库(在 standaloneDatabaseList 中提供),并带有下拉列表。此参数默认情况下为 false,除非您使用的是 Neo4j 企业版,该版本允许您使用多个数据库。 |
standaloneDatabaseList |
string |
neo4j |
如果 standaloneMultiDatabase 设置为 true,则此参数必须包含以逗号分隔的数据库名称列表,这些名称将作为选项显示在用户登录时的数据库下拉菜单中(例如,'neo4j,database1,database2' 将在连接屏幕中填充带有值 'neo4j'、'database1' 和 'database2' 的数据库下拉菜单)。如果 standaloneMultiDatabase 设置为 false,则此参数无效。 |
loggingMode |
string |
none |
确定 neodash 是否应创建任何用户活动日志。可能的值包括: ⚠️ 日志使用当前用户凭据(如果已配置,则使用 standaloneUsername)在 Neo4J 数据库中创建;必须授予对日志数据库的写入权限,才能使任何用户能够创建日志。 ⚠️ * 不记录从文件加载/保存到文件的操作(仅限从/到数据库的操作) |
loggingDatabase |
string |
日志 |
当 loggingMode 设置为除 '0' 以外的任何值时,用于记录的数据库。日志记录(节点)将在此数据库中创建。 |
customHeader |
string |
none |
设置后,仪表板标题将显示参数值作为固定字符串,否则将显示当前连接的主机名和端口。 |
配置 SSO
如果您的 Neo4j 数据库已启用单点登录 (SSO),NeoDash 可以使用 SSO 作为基于密码登录的替代方案。要启用 SSO,请将 ssoEnabled 设置为 true。然后,将 ssoDiscoveryUrl 设置为 discovery.json 所在的位置(这通常是您的数据库主机名,后面加上 /discovery.json)。
请注意,SSO 仅在启用独立模式时可用。
身份验证提供程序
要设置 NeoDash 使用外部身份提供程序,您可以向 nginx 添加一个 /auth_provider 资源(在 /conf/default.conf 中)。
location /auth_provider {
default_type application/json;
return 200 '{
"auth_config" : {
"oidc_providers" : [ ... ]
}
}';
}
对于基本部署,将请求路由到 Neo4j 数据库 https 端口上的 /auth_provider 可能就足够了。
配置独立模式
独立模式(即阅读器模式)会覆盖 NeoDash 的功能,允许您向用户部署固定的仪表板。可以通过更改 standalone 配置参数来启用独立模式。
-
如果独立模式为
false,则所有其他配置参数都将被忽略。NeoDash 将以编辑器模式运行,并需要手动登录。 -
如果独立模式为
true,NeoDash 将读取所有配置参数。一个预定义的仪表板将自动加载,并且无法对仪表板进行任何更改。有两种有效的独立部署类型:-
从 Neo4j 读取固定仪表板的独立部署。使用
standaloneDashboardName和standaloneDashboardDatabase配置参数来定义它们。 -
从 URL 读取固定仪表板的独立部署。使用
standaloneDashboardURL配置参数来定义它。
-
-
独立模式还可以配置为允许用户在预定义仪表板加载后加载另一个仪表板(仪表板标题右侧将显示一个
加载仪表板按钮)。使用standaloneAllowLoad和standaloneLoadFromOtherDatabases来定义此功能。 -
当允许用户在独立模式下动态加载仪表板时,他们可能还需要连接到不同的数据库,具体取决于所加载的特定仪表板。可以通过将
standaloneMultiDatabase设置为 true 并在 `standaloneDatabaseList` 参数中提供允许的数据库名称列表(以逗号分隔)来启用此功能。