www_site/docs/sms-verification.md

1.2 KiB
Raw Permalink Blame History

手机短信验证配置

本项目使用阿里云号码认证服务PNVS的服务端短信认证 API

  • SendSmsVerifyCode 发送并由阿里云生成验证码
  • CheckSmsVerifyCode 校验验证码

注册页支持邮箱验证和短信验证二选一。短信验证用户可以使用手机号和密码登录;邮箱验证用户可以使用邮箱和密码登录。

阿里云控制台准备

  1. 开通号码认证服务中的短信认证功能。
  2. 创建专用 RAM 用户 AccessKey只授予 dypns:SendSmsVerifyCodedypns:CheckSmsVerifyCode 权限。
  3. 在短信认证配置中取得系统赠送的签名名称和验证码模板 Code。签名和模板必须来自同一套 PNVS 资源。
  4. 确认短信认证服务有可用套餐或余额。

服务端环境变量

PHONE_VERIFICATION_ENABLED=true
ALIBABA_CLOUD_ACCESS_KEY_ID=...
ALIBABA_CLOUD_ACCESS_KEY_SECRET=...
ALIYUN_PNVS_SCHEME_NAME=
ALIYUN_PNVS_SIGN_NAME=控制台中的签名名称
ALIYUN_PNVS_TEMPLATE_CODE=控制台中的模板Code

AccessKey 只能写入服务器受保护的环境文件,不要提交到 Git也不要放入前端环境变量。当前实现使用中国大陆手机号和国家码 86