Skip to content

为用户管理配置自托管 n8n#

n8n 中的用户管理允许您邀请人员在您的 n8n 实例中工作。

本文档描述了如何配置您的 n8n 实例以支持用户管理,以及开始邀请用户的步骤。

有关使用的更多信息,请参考主要的用户管理指南,包括:

有关 LDAP 设置信息,请参考 LDAP

有关 SAML 设置信息,请参考 SAML

不支持的用户管理方式

在 1.0 版本中,n8n: - 移除了对 basic authJWT 的支持。 - 移除了 N8N_USER_MANAGEMENT_DISABLED 环境变量。在较新的 n8n 版本中,不存在受支持的方式来禁用登录屏幕,包括本地或开发用途。如果你需要简化本地开发登录流程,可以考虑使用密码管理器、设置简单的本地密码,或编写标准登录流程脚本。

设置#

在 n8n 中设置用户管理有三个阶段:

  1. 配置您的 n8n 实例以使用您的 SMTP 服务器。
  2. 启动 n8n 并按照应用程序中的设置步骤操作。
  3. 邀请用户。

第一步:SMTP#

n8n 建议设置 SMTP 服务器,用于用户邀请和密码重置。

从 0.210.1 开始可选

从版本 0.210.1 开始,此步骤是可选的。您可以选择手动复制和发送邀请链接,而不是设置 SMTP。请注意,如果您跳过此步骤,用户无法重置密码。

从您的 SMTP 提供商获取以下信息:

  • 服务器名称
  • SMTP 用户名
  • SMTP 密码
  • SMTP 发件人名称

要在 n8n 中设置 SMTP,请为您的 n8n 实例配置 SMTP 环境变量。有关如何设置环境变量的信息,请参考配置

变量 类型 描述 是否必需?
N8N_EMAIL_MODE string smtp 必需
N8N_SMTP_HOST string your_SMTP_server_name 必需
N8N_SMTP_PORT number your_SMTP_server_port。默认值为 465 可选
N8N_SMTP_USER string your_SMTP_username 可选
N8N_SMTP_PASS string your_SMTP_password 可选
N8N_SMTP_OAUTH_SERVICE_CLIENT string your_OAuth_service_client 可选
N8N_SMTP_OAUTH_PRIVATE_KEY string your_OAuth_private_key 可选
N8N_SMTP_SENDER string 发件人邮箱地址。你也可以包含发件人名称。带名称示例:n8n <[email protected]> 必需
N8N_SMTP_SSL boolean 是否为 SMTP 使用 SSL(true)或不使用 SSL(false)。默认为 true 可选
N8N_UM_EMAIL_TEMPLATES_INVITE string HTML 邮件模板的完整路径。它会覆盖邀请邮件的默认模板。 可选
N8N_UM_EMAIL_TEMPLATES_PWRESET string HTML 邮件模板的完整路径。它会覆盖密码重置邮件的默认模板。 可选
N8N_UM_EMAIL_TEMPLATES_WORKFLOW_SHARED String 覆盖用于通知用户工作流已共享的默认 HTML 模板。请提供模板的完整路径。 可选
N8N_UM_EMAIL_TEMPLATES_CREDENTIALS_SHARED String 覆盖用于通知用户凭据已共享的默认 HTML 模板。请提供模板的完整路径。 可选
N8N_UM_EMAIL_TEMPLATES_PROJECT_SHARED String 覆盖用于通知用户项目已共享的默认 HTML 模板。请提供模板的完整路径。 可选

如果您的 n8n 实例已经在运行,您需要重新启动它以启用新的 SMTP 设置。

更多配置选项

有更多配置选项可作为环境变量使用。请参考环境变量获取列表。这些选项包括禁用标签、工作流模板和个性化调查的选项,如果您不希望用户看到它们。

初次接触 SMTP?

如果您不熟悉 SMTP,SendGrid 的这篇博客文章提供了简短的介绍,而维基百科的简单邮件传输协议文章提供了更详细的技术背景。

第二步:应用内设置#

当您首次设置用户管理时,您需要创建一个所有者账户。

  1. 打开 n8n。应用程序显示注册屏幕。
  2. 输入您的详细信息。您的密码必须至少八个字符,包括至少一个数字和一个大写字母。
  3. 点击下一步。n8n 使用您的新所有者账户登录您。

通过环境变量预配置实例所有者#

自 n8n v2.17.0 起可用

你可以通过环境变量预配置实例所有者,而不必在应用内完成初始设置。将 N8N_INSTANCE_OWNER_MANAGED_BY_ENV 设为 true,并提供所有者信息即可。关于激活模式的工作方式,请参阅使用环境变量管理实例设置

若要在设置后更改所有者邮箱,请参阅更改自托管 n8n 的实例所有者邮箱

N8N_INSTANCE_OWNER_PASSWORD_HASH 必须是 bcrypt 哈希值

该变量要求填入预先计算好的 bcrypt 值。填入明文密码会导致无法登录。

变量 类型 默认值 说明
N8N_INSTANCE_OWNER_MANAGED_BY_ENV Boolean false 设为 true 后,可通过环境变量管理实例所有者。启用后,n8n 会在每次启动时覆盖下方的实例所有者信息、锁定该用户在 UI 中的相关控件,并拒绝对其进行 API 写入。
N8N_INSTANCE_OWNER_EMAIL String - 实例所有者的邮箱地址。
N8N_INSTANCE_OWNER_FIRST_NAME String - 实例所有者的名字。
N8N_INSTANCE_OWNER_LAST_NAME String - 实例所有者的姓氏。
N8N_INSTANCE_OWNER_PASSWORD_HASH String - 实例所有者密码的 bcrypt 哈希值。填入明文密码会导致无法登录。

Owner email 所有者邮箱必须唯一

N8N_INSTANCE_OWNER_EMAIL 不能已属于实例上的其他用户。此设置会更新现有实例所有者账户,不会将所有权转移给另一个现有用户,也不会合并用户账户。若要使用已属于其他用户的邮箱地址,请先更改或删除该用户,使该邮箱可用。

第三步:邀请用户#

您现在可以邀请其他人加入您的 n8n 实例。

  1. 使用您的所有者账户登录您的工作区。(如果您在管理面板中,请从仪表板打开您的工作区
  2. 点击左下角用户图标旁边的三个点,然后点击设置。n8n 打开您的个人设置页面。
  3. 点击用户进入用户页面。
  4. 点击邀请
  5. 输入新用户的电子邮件地址。
  6. 点击邀请用户。n8n 会发送一封包含链接的电子邮件,供新用户加入。