阿里云短信简介和接入流程

简介: 准备阿里云短信服务:1. 注册阿里云账号并实名,建议使用企业实名,个人无法接入短信发送API。2. 购买短信,可选验证码、通知、推广等类型。3. 设置短信签名和模板,签名用于短信前缀,模板包含具体短信内容,需审核。4. 创建并配置子用户AccessKey,仅分配短信权限,确保安全。5. 如有泄露,禁用或删除AccessKey。6. 开发阶段,参考官方文档和SDK进行代码接入。

1,准备工作:

一,点击:注册阿里云账号

输入:账号,输入:密码,输入:手机号


二,对账号进行实名

点击:实名人口

进行实名,这里建议使用企业实名,个人实名的是无法接入短信发送API的。


三,购买短信

点击:购买短信

一般刚开始用选择5000条短信


2,阿里云短信简介

阿里云短信服务(Short Message Service)是广大企业客户快速触达手机用户所优选使用的通信能力。调用API或用群发助手,即可发送验证码、通知类和营销类短信;国内验证短信秒级触达,到达率最高可达99%;国际/港澳台短信覆盖200多个国家和地区,安全稳定,广受出海企业选用

阿里云短信使用场景

案例

验证码

APP、网站注册账号,向手机下发验证码; 登录账户、异地登录时的安全提醒; 找回密码时的安全验证; 支付认证、身份校验、手机绑定等。

短信通知

向注册用户下发系统相关信息,包括: 升级或维护、服务开通、价格调整、 订单确认、物流动态、消费确认、 支付通知等普通通知短信。

推广短信

向注册用户和潜在客户发送通知和推广信息,包括促销活动通知、业务推广等商品与活动的推广信息。增加企业产品曝光率、提高产品的知名度。

短信提示模板如下:


3,接入并使用短信

一,设置短信签名

点击:短信控制台

我们需要在这里添加短信签名


什么是短信签名

短信签名是短信发送者的署名,表示发送方的身份。我们要调用阿里云短信服务发送短信,签名是比不可少的部分


点击:添加签名


注意

目前,阿里云短信服务申请签名主要针对企业开发,个人申请时有一定难度的,在审核时,会审核资质,需要上传营业执照 ;

但是,个人申请的话可以先申请一个公众号,使用公众号的签名申请短信服务

二,设置短信模板

切换到【模板管理】标签页


什么是模板?

短信模板包含短信发送内容、场景、变量信息


最终我们,给用户发送的短信中,具体的短信内容,就是上面配置的这个模板内容,将${code}占位符替换成对应的验证码数据即可

【xxxxx】您好,您的验证码为xxxx,5分钟之内有效,不要泄露给他人!

点击右上角的按钮,添加模板,然后填写模板的基本信息及设置的模板内容


注意

添加的短信模板,也是需要进行审核的只有审核通过,才可以正常使用

三,设置AccessKey

AccessKey 是访问阿里云 API 的密钥,具有账户的完全权限,我们要想在后面通过API调用阿里云短信服务的接口发送短信,那么就必须要设置AccessKey

我们点击右上角的用户头像,选择"AccessKey管理",这时就可以进入到AccessKey的管理界面


进入到AccessKey的管理界面之后,提示两个选项 “继续使用AccessKey” 和 “开始使用子用户AccessKey”

两个区别如下

继续使用AccessKey

如果选择的是该选项,我们创建的是阿里云账号的AccessKey,是具有账户的完全权限,有了这个AccessKey以后,我们就可以通过API调用阿里云的服务,不仅是短信服务,其他服务(OSS,语音服务,内容安全服务,视频点播服务…等)也可以调用。 相对来说,并不安全,当前的AccessKey泄露,会影响到我当前账户的其他云服务。

开始使用子用户AccessKey

可以创建一个子用户,这个子用户我们可以分配比较低的权限,比如仅分配短信发送的权限,不具备操作其他的服务的权限,即使这个AccessKey泄漏了,也不会影响其他的云服务, 相对安全。

四,创建子用户AccessKey


五,配置权限

创建了子用户, 但是这个子用户,目前没有任何权限

为创建的这个用户来分配权限



注意

经过上述的权限配置之后,那么新创建的这个 reggie 用户,仅有短信服务操作的权限,不具备别的权限,即使当前的AccessKey泄漏了,也只会影响短信服务,其他服务是不受影响的

六,禁用/删除AccessKey

如果在使用的过程中 AccessKey 不小心泄漏了,我们可以在阿里云控制台中, 禁用或者删除该AccessKey

添加图片注释,不超过 140 字(可选)

然后再创建一个新的AccessKey, 保存好AccessKeyId和AccessKeySecret


注意

创建好了AccessKey后,请及时保存AccessKeyId 和 AccessKeySecret ,弹窗关闭后将无法再次获取该信息,但您可以随时创建新的 AccessKey

4,代码接入开发使用短信

使用阿里云短信服务发送短信,可以参照官方提供的文档即可官方文档


根据官方文档的提示,引入对应的依赖,然后再引入对应的java代码,就可以发送消息了

pom.xml

<dependency>     <groupId>com.aliyun</groupId>     <artifactId>aliyun-java-sdk-core</artifactId>     <version>4.5.16</version> </dependency> <dependency>     <groupId>com.aliyun</groupId>     <artifactId>aliyun-java-sdk-dysmsapi</artifactId>     <version>2.1.0</version> </dependency>

将官方提供的main方法封装为一个工具类

package com.baiyang.yrlby.utils; import com.aliyuncs.DefaultAcsClient; import com.aliyuncs.IAcsClient; import com.aliyuncs.dysmsapi.model.v20170525.SendSmsRequest; import com.aliyuncs.dysmsapi.model.v20170525.SendSmsResponse; import com.aliyuncs.exceptions.ClientException; import com.aliyuncs.profile.DefaultProfile; /**  * 短信发送工具类  */ public class SMSUtils {    /**     * 发送短信     * @param signName 签名     * @param templateCode 模板     * @param phoneNumbers 手机号     * @param param 参数     */    public static void sendMessage(String signName, String templateCode,String phoneNumbers,String param){        //TODO 改成自己的       DefaultProfile profile = DefaultProfile.getProfile("cn-hangzhou", "xxxxxxxxxxxxxxxx", "xxxxxxxxxxxxxx");       IAcsClient client = new DefaultAcsClient(profile);       SendSmsRequest request = new SendSmsRequest();       request.setSysRegionId("cn-hangzhou");       request.setPhoneNumbers(phoneNumbers);       request.setSignName(signName);       request.setTemplateCode(templateCode);       request.setTemplateParam("{\"code\":\""+param+"\"}");       try {          SendSmsResponse response = client.getAcsResponse(request);          System.out.println("短信发送成功");       }catch (ClientException e) {          e.printStackTrace();       }    } }

SDK

SDK 就是 Software Development Kit 的缩写,翻译过来——软件开发工具包,辅助开发某一类软件的相关文档、范例和工具的集合都可以叫做SDK。在我们与第三方接口相互时, 一般都会提供对应的SDK,来简化我们的开发

注意

无法申请阿里云短信服务的话可以使用官方提供的测试签名和模块发送短信


public static void main(String[] args) {     //测试手机验证码     SMSUtils.sendMessage("阿里云短信测试",             "SMS_154950909",             "phone", "code"); }


相关文章
|
JavaScript Java API
如何接入阿里云短信服务 (完整指南)
如何接入阿里云短信服务 (完整指南)
53216 1
|
1月前
|
机器学习/深度学习 设计模式 人工智能
深度解析Agent实现,定制自己的Manus
文章结合了理论分析与实践案例,旨在帮助读者系统地认识AI Agent的核心要素、设计模式以及未来发展方向。
795 99
深度解析Agent实现,定制自己的Manus
|
JSON Java API
短信服务 Api 介绍|学习笔记
快速学习短信服务 Api 介绍
2709 0
短信服务 Api 介绍|学习笔记
|
消息中间件 安全 API
记项目的一次发送短信及短信模板配置分享
我们日常使用的软件或者网站,大部分都在使用短信业务,比如 注册 、 验证码功能 。还有一些特定的业务需要发送短信通知国内外用户等。有了需求就会有平台提供服务,国内有很多互联网公司都提供短信业务,比如阿里云、腾讯云、七牛。本次我们主要讲解的是阿里云提供的短信服务。
记项目的一次发送短信及短信模板配置分享
|
弹性计算 安全 Ubuntu
阿里云服务器如何安装宝塔面板教程汇总(图文教程)
阿里云服务器如何安装宝塔面板教程汇总(图文教程)
|
7月前
|
安全 Java API
【三方服务集成】最新版 | 阿里云短信服务SMS使用教程(包含支持单双参数模板的工具类,拿来即用!)
阿里云短信服务提供API/SDK和控制台调用方式,支持验证码、通知、推广等短信类型。需先注册阿里云账号并实名认证,然后在短信服务控制台申请资质、签名和模板,并创建AccessKey。最后通过Maven引入依赖,使用工具类发送短信验证码。
2726 3
【三方服务集成】最新版 | 阿里云短信服务SMS使用教程(包含支持单双参数模板的工具类,拿来即用!)
|
9月前
|
Java 微服务
SpringBoot整合SMS短信服务
本文介绍了如何在SpringBoot项目中整合阿里云SMS短信服务,包括添加依赖、配置文件、配置类、服务层接口和实现类,以及控制器层的实现,用于发送短信验证码。
SpringBoot整合SMS短信服务
|
10月前
|
小程序
阿里云短信签名申请流程,手动整理(附短信签名问题解答)
阿里云短信签名是短信中的标识信息,如【阿里云】,用于表明发送方身份。申请流程简便:登录阿里云短信服务控制台,选择国内消息下的签名管理并添加签名,按指引填写表单。审核通常2小时内完成。个人用户每日限申请一个通用签名,企业用户数量不限。签名审核需确保业务主体一致,已通过审核的签名不可改名,仅能调整其它信息并重新审核。特定情况下需上传授权委托书,且签名需关联已备案网站。
2665 1
|
消息中间件 算法 Java
聊聊如何在Java应用中发送短信
很多业务场景里,我们都需要发送短信,比如登陆验证码、告警、营销通知、节日祝福等等。 这篇文章,我们聊聊 Java 应用中如何优雅的发送短信。
聊聊如何在Java应用中发送短信
|
12月前
|
PHP 开发工具
tp5调用阿里云短信接口
tp5调用阿里云短信接口
325 0