kawhii / sso

cas单点登录系统,其中包括cas认证服务,配置中心,监控平台,服务管理的高可用项目
https://kawhii.github.io/sso
MIT License
937 stars 428 forks source link

发送校验码 #35

Closed kawhii closed 6 years ago

kawhii commented 6 years ago

验证模块接口说明文档

流程

  1. 信息生成器负责生成数据提供给信息发送者
  2. 发送成功保存
  3. 校验成功删除

配置

#验证码发送邮箱
sso.validate.mail.enable=true
sso.validate.mail.from=${spring.mail.username}
sso.validate.mail.content=统一门户注册验证码为:%s
sso.validate.mail.subject=统一门户注册

程序发送

@Autowired
private DefaultValidateService validateService;

//验证
@PostMapping
public String registry(Model model, HttpServletRequest request, @Valid RegistryInfoVo registryInfoVo) {
        ValidateResult result = validateService.validate(
                new MailValidateCredential(request.getSession().getId(), registryInfoVo.getEmail(),
                        "registry", registryInfoVo.getValidateCode()));
    if (result == ValidateResult.FAIL) {
        model.addAttribute("validateError", "验证码错误");
    } else if (result == ValidateResult.EXPIRED) {
        model.addAttribute("validateError", "验证码已过期");
    }
    return "registryView";
}

//发送
validateService.send(new MailCredential(request.getSession().getId(), mail, "registry"));
kawhii commented 6 years ago

sso-support/sso-support-validate 模块特效