跳到主要内容

为自托管 n8n 配置用户管理

通过 n8n 用户管理,可以邀请其他人在你的 n8n 实例中工作。

本页介绍如何为实例配置用户管理,以及如何开始邀请用户。

更多使用说明请参阅主要的用户管理指南,包括:

LDAP 设置说明请参阅 LDAP。

SAML 设置说明请参阅 SAML。

注意

功能可用范围

自 n8n 1.0 起,已移除对基本身份验证和 JWT 身份验证的支持。

N8N_USER_MANAGEMENT_DISABLED 环境变量也已在 n8n 1.0 中移除。近期版本没有受支持的方式可以禁用登录页面,包括本地或开发环境。如需简化本地开发登录,可以使用密码管理器、设置简单的本地密码,或通过脚本执行标准登录流程。

设置 ​

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

  1. 配置 n8n 实例使用 SMTP 服务器。
  2. 启动 n8n,完成应用内设置。
  3. 邀请用户。

第一步:SMTP ​

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

信息

功能可用范围

自 n8n 0.210.1 起,SMTP 为可选配置。可以不设置 SMTP,改为手动复制并发送邀请链接。但跳过此步骤后,用户将无法重置密码。

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

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

要为 n8n 设置 SMTP,请配置实例的 SMTP 环境变量。环境变量设置方法请参阅配置。

变量类型说明是否必需
N8N_EMAIL_MODEstringsmtp必需
N8N_SMTP_HOSTstringSMTP 服务器名称必需
N8N_SMTP_PORTnumberSMTP 服务器端口,默认为 465。可选
N8N_SMTP_USERstringSMTP 用户名可选
N8N_SMTP_PASSstringSMTP 密码可选
N8N_SMTP_OAUTH_SERVICE_CLIENTstringOAuth 服务客户端可选
N8N_SMTP_OAUTH_PRIVATE_KEYstringOAuth 私钥可选
N8N_SMTP_SENDERstring发件人邮箱地址,可包含发件人名称。带名称的示例:n8n <contact@n8n.com>必需
N8N_SMTP_SSLboolean是否对 SMTP 使用 SSL,true 表示使用,false 表示不使用。默认为 true。可选
N8N_UM_EMAIL_TEMPLATES_INVITEstringHTML 邮件模板的完整路径,用于覆盖邀请邮件的默认模板。可选
N8N_UM_EMAIL_TEMPLATES_PWRESETstringHTML 邮件模板的完整路径,用于覆盖密码重置邮件的默认模板。可选
N8N_UM_EMAIL_TEMPLATES_WORKFLOW_SHAREDString覆盖通知用户工作流已共享的默认 HTML 模板。提供模板的完整路径。可选
N8N_UM_EMAIL_TEMPLATES_CREDENTIALS_SHAREDString覆盖通知用户凭据已共享的默认 HTML 模板。提供模板的完整路径。可选
N8N_UM_EMAIL_TEMPLATES_PROJECT_SHAREDString覆盖通知用户项目已共享的默认 HTML 模板。提供模板的完整路径。可选

如果 n8n 实例已经运行,需要重启才能启用新的 SMTP 设置。

信息

更多配置选项

还有更多可通过环境变量设置的配置选项,清单请参阅环境变量。例如,如果不希望用户看到标签、工作流模板或个性化调查,可以禁用这些功能。

信息

初次接触 SMTP?

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

第二步:应用内设置 ​

首次设置用户管理时,需要创建所有者账号。

  1. 打开 n8n,应用会显示注册页面。
  2. 输入个人信息。密码至少包含八个字符,其中至少包含一个数字和一个大写字母。
  3. 点击 Next(下一步)。n8n 会使用新的所有者账号登录。

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

信息

功能可用范围

自 n8n 2.17.0 起,支持通过环境变量预配置实例所有者。

可以通过环境变量预配置实例所有者,无需完成应用内设置。将 N8N_INSTANCE_OWNER_MANAGED_BY_ENV 设为 true,并提供所有者信息。启用机制请参阅通过环境变量管理实例设置。

设置后如需更改所有者邮箱,请参阅更改自托管 n8n 的实例所有者邮箱。

注意

N8N_INSTANCE_OWNER_PASSWORD_HASH 必须为 bcrypt 哈希值

此变量要求提供预先生成的 bcrypt 哈希值。设置明文密码会导致无法登录。

变量类型默认值说明
N8N_INSTANCE_OWNER_MANAGED_BY_ENVBooleanfalse设为 true,通过环境变量管理实例所有者。当值为 true 时,n8n 会在每次启动时覆盖下方的实例所有者信息,锁定该用户的界面控件,并拒绝通过 API 修改。
N8N_INSTANCE_OWNER_EMAILString-实例所有者的电子邮件地址。
N8N_INSTANCE_OWNER_FIRST_NAMEString-实例所有者的名。
N8N_INSTANCE_OWNER_LAST_NAMEString-实例所有者的姓。
N8N_INSTANCE_OWNER_PASSWORD_HASHString-实例所有者密码的 bcrypt 哈希值。设置明文密码会导致无法登录。
注意

所有者邮箱必须唯一

N8N_INSTANCE_OWNER_EMAIL 不能已属于实例中的其他用户。此设置更新现有实例所有者账号,不会将所有权转移给其他现有用户,也不会合并账号。要使用已属于其他用户的邮箱,请先更改或删除该用户,释放邮箱。

第三步:邀请用户 ​

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

  1. 使用所有者账号登录 n8n 实例。在 n8n Cloud 中,如果当前位于 Cloud 控制台,请在 **Overview(概览)**页面选择 Open instance(打开实例)。
  2. 点击左下角用户图标旁的三点菜单,再点击 Settings(设置)。n8n 会打开 **Personal settings(个人设置)**页面。
  3. 点击 Users(用户),进入用户页面。
  4. 点击 Invite(邀请)。
  5. 输入新用户的电子邮件地址。
  6. 点击 Invite user(邀请用户)。n8n 会发送包含加入链接的邮件。

相关资源 ​

本文为社区中文翻译。查看对应英文原文