为用户管理配置自托管 n8n#
n8n 中的用户管理允许您邀请人员在您的 n8n 实例中工作。
本文档描述了如何配置您的 n8n 实例以支持用户管理,以及开始邀请用户的步骤。
有关使用的更多信息,请参考主要的用户管理指南,包括:
有关 LDAP 设置信息,请参考 LDAP。
有关 SAML 设置信息,请参考 SAML。
不支持的用户管理方式
在 1.0 版本中,n8n:
- 移除了对 basic auth 和 JWT 的支持。
- 移除了 N8N_USER_MANAGEMENT_DISABLED 环境变量。在较新的 n8n 版本中,不存在受支持的方式来禁用登录屏幕,包括本地或开发用途。如果你需要简化本地开发登录流程,可以考虑使用密码管理器、设置简单的本地密码,或编写标准登录流程脚本。
设置#
在 n8n 中设置用户管理有三个阶段:
- 配置您的 n8n 实例以使用您的 SMTP 服务器。
- 启动 n8n 并按照应用程序中的设置步骤操作。
- 邀请用户。
第一步: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 的这篇博客文章提供了简短的介绍,而维基百科的简单邮件传输协议文章提供了更详细的技术背景。
第二步:应用内设置#
当您首次设置用户管理时,您需要创建一个所有者账户。
- 打开 n8n。应用程序显示注册屏幕。
- 输入您的详细信息。您的密码必须至少八个字符,包括至少一个数字和一个大写字母。
- 点击下一步。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 实例。
- 使用您的所有者账户登录您的工作区。(如果您在管理面板中,请从仪表板打开您的工作区)
- 点击左下角用户图标旁边的三个点,然后点击设置。n8n 打开您的个人设置页面。
- 点击用户进入用户页面。
- 点击邀请。
- 输入新用户的电子邮件地址。
- 点击邀请用户。n8n 会发送一封包含链接的电子邮件,供新用户加入。