# 腾讯云邮箱验证码登录配置指南 ## 1. 腾讯云服务开通 ### 1.1 开通邮件推送服务(SES) 1. 登录腾讯云控制台 2. 进入"邮件推送"服务 3. 开通邮件推送服务 4. 配置发件人邮箱 5. 申请邮件模板 ### 1.2 获取API密钥 1. 进入"访问管理" -> "API密钥管理" 2. 创建密钥,获取SecretId和SecretKey ## 2. 配置参数 ### 2.1 修改配置文件 编辑 `src/main/resources/application-tencent.properties`: ```properties # 腾讯云配置 tencent.cloud.secret-id=你的SecretId tencent.cloud.secret-key=你的SecretKey # 邮件推送服务配置 tencent.cloud.ses.region=ap-beijing tencent.cloud.ses.from-email=你的发件人邮箱 tencent.cloud.ses.from-name=你的应用名称 tencent.cloud.ses.template-id=你的邮件模板ID ``` ### 2.2 邮件模板示例 ```html
您的验证码是:{{code}}
请在5分钟内输入,如非本人操作,请忽略此邮件。
``` ## 3. Redis配置 ### 3.1 安装Redis - Windows: 下载Redis for Windows - Linux: `sudo apt-get install redis-server` - macOS: `brew install redis` ### 3.2 启动Redis ```bash redis-server ``` ### 3.3 配置Redis连接 修改 `application-tencent.properties` 中的Redis配置: ```properties spring.data.redis.host=localhost spring.data.redis.port=6379 spring.data.redis.password= spring.data.redis.database=0 ``` ## 4. 测试验证码功能 ### 4.1 发送邮件验证码 ```bash curl -X POST http://localhost:8080/api/verification/email/send \ -H "Content-Type: application/json" \ -d '{"email": "test@example.com"}' ``` ### 4.2 验证码登录 ```bash # 邮箱验证码登录 curl -X POST http://localhost:8080/api/auth/login/email \ -H "Content-Type: application/json" \ -d '{"email": "test@example.com", "code": "123456"}' ``` ## 5. 安全注意事项 1. **API密钥安全**:不要将SecretId和SecretKey提交到代码仓库 2. **验证码有效期**:验证码5分钟过期 3. **发送频率限制**:同一邮箱60秒内只能发送一次 4. **验证码长度**:6位数字验证码 5. **Redis安全**:生产环境建议设置Redis密码 ## 6. 故障排除 ### 6.1 常见错误 - `TencentCloudSDKException`: 检查API密钥和配置 - `Redis连接失败`: 检查Redis服务是否启动 - `验证码发送失败`: 检查腾讯云服务配置 ### 6.2 日志查看 查看应用日志中的验证码相关日志: ```bash tail -f logs/application.log | grep "验证码" ``` ## 7. 生产环境部署 ### 7.1 环境变量配置 ```bash export TENCENT_SECRET_ID=你的SecretId export TENCENT_SECRET_KEY=你的SecretKey export REDIS_HOST=你的Redis主机 export REDIS_PORT=你的Redis端口 ``` ### 7.2 配置文件 使用环境变量覆盖配置文件中的敏感信息。