360 Secure SkillHub
360 安全技能中心

login-digitalme

通过环境变量配置的 API 服务地址,使用 curl 调用「发送短信验证码」与「验证码登录」两个接口:先校验手机号格式并发送验证码,再由用户输入验证码完成登录,成功后从中提取 token(仅展示前 20 个字符)供后续请求使用,并针对常见错误码给出提示。

guolai806
guolai806
热度 34.75
最近更新 2026-05-11 17:38:51
分类:自动化依赖:代码执行 / 第三方 API应用场景:API 集成 / 工作流 / 自动化脚本

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add login-digitalme
Metadata
name
sms-login
description
通过手机短信验证码完成用户登录/注册,包含发送验证码和验证码登录两个接口。
version
1.0.0
metadata
{"openclaw":{"requires":{"bins":["curl","jq"],"env":["180.184.28.174:30080"]},"primaryEnv":"180.184.28.174:30080"}}

短信验证码登录

通过手机号和短信验证码实现用户快速登录或自动注册。

何时使用

当用户要求:发送手机验证码、用手机号登录、用验证码登录、手机号注册 时,使用此 skill。

前置条件

  • 环境变量 SMS_LOGIN_BASE_URL 已设置为 API 服务器地址
  • 系统已安装 curl 和 jq

步骤一:发送验证码

向用户确认手机号后,发送验证码:

curl -s -X POST "${SMS_LOGIN_BASE_URL}/api/v1/auth/phone/send" \
  -H "Content-Type: application/json" \
  -d '{"phone": "'"${PHONE}"'"}' | jq .

响应判断

条件 含义 下一步
code == 200 发送成功 提示用户查看短信,进入步骤二
HTTP 400 手机号格式错误 提示用户检查手机号,重新输入
code == 500 限流或系统错误 展示 message 内容,稍后重试

步骤二:验证码登录

向用户索要短信中的验证码后,发起登录:

curl -s -c - -X POST "${SMS_LOGIN_BASE_URL}/api/v1/auth/phone/login" \
  -H "Content-Type: application/json" \
  -d '{"phone": "'"${PHONE}"'", "code": "'"${CODE}"'"}' | jq .

响应判断

条件 含义 下一步
code == 200 登录成功 从 data.token 提取 token,后续请求用 Authorization: Bearer <token>
HTTP 400 参数缺失/格式错误 提示用户重新输入
code == 401 验证码错误或已过期 建议用户重新获取验证码,回到步骤一

登录成功时,响应头会设置 Set-Cookie: token=<value>,浏览器场景会自动维持会话。


Rules

  • 手机号必须由用户明确提供,禁止猜测或自动填充
  • 验证码必须由用户手动输入,禁止尝试自动获取或暴力枚举
  • 同一手机号 60 秒内不得重复发送验证码
  • 输出中不要暴露完整 token,最多显示前 20 个字符加省略号
  • 中国大陆手机号为 11 位数字且以 1 开头,发送前先做格式校验
  • 登录失败时必须向用户展示具体错误信息