目录

n8n 凭证管理教程:API 密钥、OAuth 与 Google 授权设置

n8n 连接外部服务所需的账号、密码、API 密钥和 OAuth 授权都保存在**凭证(Credentials)**中。凭证与工作流分开保存:

  • 同一组凭证可以在多个工作流中重复使用
  • 导出或分享工作流时,不会包含凭证内容
  • 凭证在数据库中以加密方式保存

添加凭证

有两种方式:

  1. 在节点中的 Credential to connect with 选择 Create new credential。
  2. 在首页的 Credentials 选项卡中选择 Add Credential。
添加凭证时选择服务
Credentials → Create credential,搜索要连接的服务

不同服务需要填写的字段不同,表单上方通常会有指向官方文档的说明链接。

凭证类型

类型说明示例
API Key / Token在该服务的后台生成一个密钥,然后粘贴到 n8nOpenAI、Notion、Telegram Bot
账号密码直接输入SMTP、数据库、FTP
OAuth2点击按钮后跳转到服务登录并授权Google、Microsoft、Slack

示例:Telegram Bot

  1. 在 Telegram 中搜索 @BotFather,发送 /newbot,并按提示命名。
  2. BotFather 会提供一个 Bot Token,例如 123456789:AAH...。
  3. 在 n8n 中添加 Telegram API 凭证,粘贴 Token 并保存。
Telegram API 凭证设置界面
Telegram API 凭证:粘贴 BotFather 提供的 Access Token,然后点击 Save

详细的机器人示例请参阅 Telegram 机器人。

示例:为自托管 n8n 设置 Google 授权

n8n Cloud 可以一键登录 Google;自托管时,需要先在 Google Cloud 中创建自己的 OAuth 客户端:

1. 创建 Google Cloud 项目

  1. 前往 Google Cloud Console 创建新项目。
  2. 在“API 和服务 → 库”中启用所需的 API,例如 Google Sheets API、Gmail API、Google Drive API。

2. 设置 OAuth 同意屏幕

  1. 打开“API 和服务 → OAuth 同意屏幕”,将用户类型设为外部。
  2. 填写应用名称和联系邮箱。
  3. 在测试用户中添加你自己的 Google 账号。

3. 创建 OAuth 客户端 ID

  1. 打开“API 和服务 → 凭证 → 创建凭证 → OAuth 客户端 ID”。

  2. 将应用类型设为网页应用。

  3. 将 n8n 凭证界面中显示的 OAuth Redirect URL 粘贴到已获授权的重定向 URI,例如:

    https://n8n.example.com/rest/oauth2-credential/callback
  4. 创建后会获得 Client ID 和 Client Secret。

4. 返回 n8n 完成授权

  1. 添加 Google Sheets OAuth2 API(或 Gmail、Google Drive)凭证。
  2. 粘贴 Client ID 和 Client Secret。
  3. 点击 Sign in with Google,登录并同意授权。

重定向 URI 必须完全匹配。n8n 会通过 N8N_HOST、N8N_PROTOCOL 以及 Webhook URL 等环境变量生成此网址;如果显示为 http://localhost:5678,说明部署设置尚未完成,请参阅自托管部署。

应用处于“测试”状态时,授权有效期较短,可能需要定期重新授权。如需长期使用,可以考虑将应用发布为正式版本(可能需要通过 Google 审核)。

在 HTTP Request 节点中使用凭证

调用没有现成节点的 API 时,可以在 HTTP Request 节点的 Authentication 中选择:

  • Predefined Credential Type:使用 n8n 已支持的服务凭证(例如 Notion)。即使 n8n 的 Notion 节点不支持某个 API,也可以使用同一组凭证调用该 API。
  • Generic Credential Type:
    • Header Auth:例如名称为 Authorization,值为 Bearer sk-xxx
    • Query Auth:将密钥放在网址参数中
    • Basic Auth:账号密码
    • OAuth2:自行设置 OAuth 端点

不要将 API 密钥直接写入 URL 或 Header 字段,否则导出或分享工作流时,密钥也会一并泄露。

凭证加密密钥

凭证使用一把加密密钥进行加密。密钥默认保存在 n8n 数据目录(/home/node/.n8n/config)中,也可以通过环境变量 N8N_ENCRYPTION_KEY 指定。

  • 迁移或还原 n8n 时,必须使用相同的加密密钥,否则所有凭证都无法解密。
  • 多个 n8n 实例(例如 queue mode 的 worker)必须使用相同的密钥。

备份方法请参阅备份与更新。

共享与权限

默认情况下,只有创建者可以使用凭证。在凭证的 Sharing 设置中,可以将凭证共享给其他用户或项目(具体功能取决于方案)。获得共享的用户可以在工作流中使用凭证,但看不到凭证内容。

更新于 2026年10月12日