# 凭证管理 (Credentials) **凭证是n8n连接外部世界的"钥匙"**。它用于安全地存储和管理连接外部服务(如数据库、API、邮箱)所需的授权信息(如API密钥、OAuth令牌、用户名密码等)。 ## 📚 学习资源 - **图文教程**:[n8n凭证管理实战指南](https://jishuzhan.net/article/1951148541186977794) - **官方文档**:[Credentials Management](https://docs.n8n.io/credentials/) ## 🔐 凭证的重要性 **🛡️ 安全存储**:n8n对凭证进行加密存储,保护您的账户安全 **🎯 集中管理**:在一个地方统一创建、查看和管理所有凭证 **♻️ 重复使用**:创建一次凭证后,可在多个工作流和节点中重复使用 **📋 最佳实践**:将敏感信息与工作流逻辑分离,更安全、更易于维护 ## 🔧 凭证类型和配置 ### 常用凭证类型 | 凭证类型 | 用途 | 配置信息 | |---------|------|----------| | **API Key** | 第三方服务认证 | API密钥、密钥名称 | | **OAuth2** | 社交媒体、云服务 | 客户端ID、密钥、授权URL | | **基本认证** | 简单用户名密码 | 用户名、密码 | | **数据库连接** | 数据库访问 | 主机、端口、用户名、密码 | | **SMTP邮箱** | 邮件发送 | 服务器、端口、认证信息 | ### 大模型凭证配置 AI模型集成是n8n的重要功能,需要配置相应的API凭证: === "OpenAI GPT" ```yaml 凭证类型: OpenAI API Key: sk-xxxxxxxxxxxxxxxxxxxxxxxx Organization ID: org-xxxxxxxxxxxxxxxx (可选) API Base URL: https://api.openai.com/v1 (默认) ``` === "Claude (Anthropic)" ```yaml 凭证类型: Anthropic API Key: sk-ant-xxxxxxxxxxxxxxxxxxxxxxxx API Version: 2023-06-01 ``` === "Google Gemini" ```yaml 凭证类型: Google AI API Key: AIzaxxxxxxxxxxxxxxxxxxxxxxxxx ``` === "本地模型 (Ollama)" ```yaml 凭证类型: HTTP Request Base URL: http://localhost:11434 认证: 无 (本地部署) ``` ### 邮箱凭证配置 邮件自动化是常见需求,以下是主流邮箱服务配置: === "Gmail" ```yaml 类型: Gmail OAuth2 客户端ID: your-client-id.googleusercontent.com 客户端密钥: your-client-secret 刷新令牌: 通过OAuth流程获得 ``` !!! tip "Gmail设置提示" 需要在Google Cloud Console启用Gmail API并创建OAuth2凭证 === "Outlook/Hotmail" ```yaml 类型: Microsoft OAuth2 应用程序ID: your-application-id 客户端密钥: your-client-secret 租户ID: common (个人账户) ``` === "企业邮箱 (SMTP)" ```yaml 类型: SMTP 主机: smtp.yourcompany.com 端口: 587 (TLS) 或 465 (SSL) 用户名: your-email@company.com 密码: your-app-password 安全连接: STARTTLS ``` ### 数据库凭证配置 === "MySQL" ```yaml 类型: MySQL 主机: localhost 或 mysql.example.com 端口: 3306 数据库: your_database_name 用户名: your_username 密码: your_password SSL: 启用 (生产环境推荐) ``` === "PostgreSQL" ```yaml 类型: PostgreSQL 主机: localhost 端口: 5432 数据库: your_database 用户名: postgres 密码: your_password SSL模式: require ``` === "MongoDB" ```yaml 类型: MongoDB 连接字符串: mongodb://username:password@host:port/database 数据库: your_database_name 认证数据库: admin ``` ## 🔒 安全最佳实践 ### 凭证安全原则 !!! danger "安全清单" - [ ] **强密码策略**:使用复杂且唯一的密码 - [ ] **最小权限原则**:只授予必要的权限 - [ ] **定期轮换**:定期更新API密钥和密码 - [ ] **访问审计**:记录凭证使用情况 - [ ] **环境隔离**:开发/测试/生产环境使用不同凭证 ### 凭证命名规范 建议采用清晰的命名规范: ``` 服务名_环境_用途_版本 例如: - gmail_prod_marketing_v1 - mysql_dev_analytics_v2 - openai_prod_chatbot_v1 ``` ### 权限控制 | 权限级别 | 适用场景 | 权限范围 | |----------|----------|----------| | **只读** | 数据查询、报告生成 | 查看权限 | | **读写** | 数据同步、内容管理 | 增删改查 | | **管理员** | 系统集成、完整控制 | 全部权限 | ## 🛠️ 凭证创建和管理 ### 创建新凭证 1. **进入凭证管理** - 点击左侧菜单 "Credentials" - 或在节点配置中点击 "Create New" 2. **选择凭证类型** - 从预定义类型中选择 - 或选择 "Generic Authentication" 自定义 3. **填写配置信息** - 输入必要的认证信息 - 设置凭证名称和描述 4. **测试连接** - 使用 "Test" 功能验证凭证 - 确保连接成功后保存 ### 凭证使用流程 **创建凭证** → **配置参数** → **测试连接** → **保存凭证** → **在节点中使用** → **工作流执行** ## 🔄 凭证维护和故障排除 ### 常见问题和解决方案 | 问题 | 可能原因 | 解决方案 | |------|----------|----------| | **认证失败** | 密码或密钥错误 | 重新获取并更新凭证 | | **权限不足** | 账户权限限制 | 检查并提升账户权限 | | **连接超时** | 网络或服务器问题 | 检查网络连接和服务状态 | | **凭证过期** | Token或密钥过期 | 重新授权或更新凭证 | ### 维护策略 **定期检查**: ```bash # 凭证健康检查清单 □ 测试所有活跃凭证的连接状态 □ 检查即将过期的Token □ 更新弱密码和过期凭证 □ 清理不再使用的凭证 □ 备份重要凭证配置 ``` **监控和告警**: - 设置凭证失效监控 - 配置自动化健康检查工作流 - 建立凭证问题通知机制 ## 📚 实践示例 ### 示例:配置Gmail发送工作报告 1. **创建Gmail OAuth2凭证** 2. **设计工作流**:定时触发 → 生成报告数据 → 格式化邮件内容 → Gmail发送邮件 3. **配置邮件节点使用凭证** 4. **测试和部署** 详细图文示例请参考:[n8n凭证管理实战指南](https://jishuzhan.net/article/1951148541186977794) --- 掌握凭证管理是安全使用n8n的基础,也是构建可靠自动化系统的关键。 [上一章:界面介绍](interface/){ .md-button } [下一章:n8n汉化](localization/){ .md-button .md-button--primary }