You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
25 lines
925 B
25 lines
925 B
package com.mydreamjob.auth.sms;
|
|
|
|
/**
|
|
* 短信验证码发送抽象。
|
|
*
|
|
* <p>真实发送由 {@code app.sms.aliyun.enabled=true} 和完整凭据配置启用;
|
|
* 未启用真实发送时,由 {@code app.sms.mock.enabled} 决定回退实现:
|
|
* <ul>
|
|
* <li>{@code true} → {@link MockSmsCodeSender}(本地/测试环境,不调用外部网关)</li>
|
|
* <li>{@code false} 或未配置 → {@link UnavailableSmsCodeSender}(安全失败,不伪造成功)</li>
|
|
* </ul>
|
|
*
|
|
* <p>实现方<strong>禁止</strong>把验证码或完整手机号写入任何级别的日志。
|
|
*/
|
|
public interface SmsCodeSender {
|
|
|
|
/**
|
|
* 发送验证码。
|
|
*
|
|
* @param phone 接收手机号(实现方不得写入日志)
|
|
* @param purpose 验证码用途
|
|
* @param code 验证码(实现方不得写入日志)
|
|
*/
|
|
void sendVerificationCode(String phone, String purpose, String code);
|
|
}
|
|
|