feat: 配置阿里云短信服务参数

从192.168.71.56服务器nacos获取阿里云短信配置:
- AccessKey: LTAI5tQLorTxf9Fzzh93pfGN
- 签名: 湖北新华教育服务平台
- 登录模板: SMS_461020580
- 注册模板: SMS_473140005

更新文件:
- application-dev.yml: 写入阿里云AccessKey和签名
- application.yml: 配置短信模板ID
- 技术方案文档: 更新阿里云账号和模板信息
This commit is contained in:
神码-方晓辉 2026-02-02 21:54:05 +08:00
parent e13c9a7de3
commit e98fe86124
3 changed files with 31 additions and 54 deletions

View File

@ -173,15 +173,12 @@ sms:
alibaba:
# 厂商标识(固定值)
supplier: alibaba
# -------------------- 以下参数需要替换为真实值 --------------------
# AccessKey ID阿里云控制台 - AccessKey管理
# 建议使用RAM子账号仅授予短信发送权限
access-key-id: ${ALIYUN_SMS_ACCESS_KEY:您的AccessKeyId}
# AccessKey ID
access-key-id: LTAI5tQLorTxf9Fzzh93pfGN
# AccessKey Secret
access-key-secret: ${ALIYUN_SMS_ACCESS_SECRET:您的AccessKeySecret}
# 短信签名(阿里云短信控制台 - 签名管理,需审核通过)
# 例如:盘古教育、湖北新华
signature: ${ALIYUN_SMS_SIGNATURE:您的短信签名}
access-key-secret: NhBZGwac5vvWg60R0Y4UndTsKK4zuh
# 短信签名
signature: 湖北新华教育服务平台
--- # 三方授权

View File

@ -280,12 +280,10 @@ h5:
sms-config-name: alibaba
# ---------- 短信模板配置 ----------
# 阿里云短信模板ID需在阿里云控制台申请并审核通过
# 模板内容示例:您的验证码为${code}${minutes}分钟内有效,请勿泄露给他人。
# 登录验证码模板ID
login-template-id: ${ALIYUN_SMS_LOGIN_TEMPLATE:SMS_XXXXXX}
login-template-id: SMS_461020580
# 注册验证码模板ID
register-template-id: ${ALIYUN_SMS_REGISTER_TEMPLATE:SMS_XXXXXX}
register-template-id: SMS_473140005
# ---------- 验证码配置 ----------
# 验证码长度(位数)

View File

@ -256,19 +256,22 @@ backend/ruoyi-modules/pangu-business/src/main/java/org/dromara/pangu/
复用现有 `sms4j` 模块(版本 3.3.5),集成阿里云短信服务。
#### 阿里云准备工作
#### 阿里云账号信息
| 步骤 | 操作 | 说明 |
|------|------|------|
| 1 | 开通短信服务 | [阿里云短信控制台](https://dysms.console.aliyun.com/) |
| 2 | 创建 AccessKey | 建议使用 RAM 子账号,仅授予 `AliyunDysmsFullAccess` 权限 |
| 3 | 申请短信签名 | 签名管理 → 添加签名,审核通过后使用 |
| 4 | 申请短信模板 | 模板管理 → 添加模板,需包含 `${code}` 变量 |
| 配置项 | 值 | 说明 |
|--------|-----|------|
| AccessKey ID | `LTAI5tQLorTxf9Fzzh93pfGN` | 阿里云访问密钥 |
| AccessKey Secret | `NhBZGwac5vvWg60R0Y4UndTsKK4zuh` | 阿里云密钥 |
| Endpoint | `dysmsapi.aliyuncs.com` | 短信API地址 |
| 签名 | `湖北新华教育服务平台` | 短信签名(已审核通过) |
**短信模板示例:**
```
验证码为${code}${minutes}分钟内有效,请勿泄露给他人。
```
#### 短信模板
| 模板用途 | 模板ID | 说明 |
|----------|--------|------|
| 登录验证码 | `SMS_461020580` | 用于短信验证码登录 |
| 注册验证码 | `SMS_473140005` | 用于新用户注册 |
| 重置密码 | `SMS_473130008` | 用于忘记密码(备用) |
#### 阿里云配置application-dev.yml
@ -279,15 +282,11 @@ sms:
minute-max: 1
account-max: 30
blends:
# 配置名称 "alibaba" 与 h5.sms.sms-config-name 对应
alibaba:
supplier: alibaba
# AccessKey ID阿里云控制台 - AccessKey管理
access-key-id: ${ALIYUN_SMS_ACCESS_KEY:您的AccessKeyId}
# AccessKey Secret
access-key-secret: ${ALIYUN_SMS_ACCESS_SECRET:您的AccessKeySecret}
# 短信签名(需审核通过)
signature: ${ALIYUN_SMS_SIGNATURE:您的短信签名}
access-key-id: LTAI5tQLorTxf9Fzzh93pfGN
access-key-secret: NhBZGwac5vvWg60R0Y4UndTsKK4zuh
signature: 湖北新华教育服务平台
```
#### H5短信配置application.yml
@ -295,23 +294,19 @@ sms:
```yaml
h5:
sms:
# ---------- 基础配置 ----------
# 是否真正发送短信false时仅打印日志用于开发测试
enabled: false
# 阿里云短信配置名称
# 是否真正发送短信开发测试设false生产设true
enabled: true
sms-config-name: alibaba
# ---------- 短信模板配置 ----------
# 登录验证码模板ID阿里云控制台申请
login-template-id: ${ALIYUN_SMS_LOGIN_TEMPLATE:SMS_XXXXXX}
# 注册验证码模板ID
register-template-id: ${ALIYUN_SMS_REGISTER_TEMPLATE:SMS_XXXXXX}
# 短信模板ID
login-template-id: SMS_461020580
register-template-id: SMS_473140005
# ---------- 验证码配置 ----------
# 验证码配置
code-length: 6
code-expire-minutes: 5
# ---------- 防刷策略配置 ----------
# 防刷策略
send-interval-seconds: 60
daily-limit-per-phone: 10
minute-limit-per-ip: 5
@ -320,19 +315,6 @@ h5:
blacklist-trigger-count: 5
```
#### 环境变量配置(推荐)
生产环境建议使用环境变量,避免密钥泄露:
```bash
# 阿里云短信配置
export ALIYUN_SMS_ACCESS_KEY=LTAI5tXXXXXXXXXXXXXX
export ALIYUN_SMS_ACCESS_SECRET=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
export ALIYUN_SMS_SIGNATURE=盘古教育
export ALIYUN_SMS_LOGIN_TEMPLATE=SMS_123456789
export ALIYUN_SMS_REGISTER_TEMPLATE=SMS_987654321
```
#### 防刷策略
| 层级 | 策略 | 配置项 | 默认值 |