## CDN安全策略 > 阿里云服务空间支持 ## 简介 云存储及前端网页托管上传的文件在对外分发后,只要知道文件链接,公网上是可以随意访问的。这种情况很有可能会造成CDN流量被刷,导致资源用量上升。 针对这种情况,可通过安全策略提供的Referer防盗链、IP黑白名单、User-Agent黑白名单来实现对访客身份的识别和过滤,从而限制访问CDN资源的用户,提升CDN的安全性。 ## 如何开通 在[uniCloud控制台](https://unicloud.dcloud.net.cn "uniCloud控制台") --> 服务空间详情 --> 安全 --> CDN安全策略来申请开通。 开通要求:前一日账号下所有服务空间产生的CDN流量大于1GB,CDN流量包含云存储及绑定自定义域名的前端网页托管。 符合条件会实时开通,开通后可配置云存储及前端网页托管的访问控制规则及查看访问报表。访问报表有一天延迟,开通当天的报表会在第二天生成。 **由于前端网页托管默认域名不走CDN,所以只有绑定了自定义域名才可配置前端网页托管的访问规则及查看报表。** ## Referer防盗链@referer Referer防盗链,是基于HTTP请求头中Referer字段来设置访问控制规则,实现对访客的身份识别和过滤,防止资源被非法盗用。 配置Referer黑白名单后,CDN会根据配置的规则识别请求身份,允许或拒绝访问请求。允许访问请求,CDN会返回资源链接;拒绝访问请求,CDN会返回403响应码。 ### 如何配置Referer防盗链 访问控制Referer防盗链页签,点击修改配置来配置规则。您可根据业务需求,设置Referer黑名单或白名单。 ![配置Referer防盗链](https://web-assets.dcloud.net.cn/unidoc/zh/cdn-safe-referer.png) **配置说明** |配置项 |参数 |说明 | |:-: |:-: |:-: | |Referer类型 |黑名单 | 黑名单内的域名均无法访问资源 | | | 白名单 | 只有白名单内的域名能访问资源,白名单以外的域名均无法访问资源。 | |规则 | Referer列表 | 多个使用回车符进行分隔。支持使用 \* 作为通配符。例如,*.example.com,可以匹配到image.example.com或video.example.com等。 | |高级配置 | 允许通过浏览器地址栏直接访问资源URL | 当勾选该选项时,请求Referer字段为空或无Referer字段(例如浏览器请求),都将允许用户访问资源 | | | 精确匹配 | 规则中填写的域名是否为精确匹配 | **补充** - 未勾选精确匹配,规则填写example.com时,匹配example.com和<任意字符>.example.com。规则填写a*b.example.com时,匹配a<任意字符>b.example.com和<任意字符>.a<任意字符>b.example.com。 - 勾选精确匹配,规则填写example.com时,匹配example.com。规则填写a*b.example.com时,匹配a<任意字符>b.example.com。 - Referer防盗链规则的总长度最长不超过60KB。 ### 各小程序平台默认Referer 如果您的应用是小程序,可将小程序平台默认Referer配置到白名单规则中,以允许访问资源。 |平台 |Referer | |:-: |:-: | |微信 | https://servicewechat.com | |QQ | https://appservice.qq.com | |头条抖音 | https://tmaservice.developer.toutiao.com | |百度 | https://smartapps.cn | |支付宝 | https://你的appid.hybrid.alipay-eco.com | ## IP黑/白名单@ip 通过识别客户端IP来过滤用户请求,拦截特定IP的访问或者允许特定IP的访问,可以用来解决恶意IP盗刷、攻击等问题。 ### 如何配置IP黑/白名单 访问控制IP黑/白名单页签,点击修改配置来配置规则。 ![配置IP黑/白名单](https://web-assets.dcloud.net.cn/unidoc/zh/cdn-safe-ip.png) |配置项 |参数 |说明 | |:-: |:-: |:-: | |名单类型 |黑名单 | 黑名单内的IP无法访问所有资源。 | |名单类型 |白名单 | 只有白名单内的IP能访问资源,白名单以外的IP均无法访问。 | |规则 |IP列表 | 多个使用回车符进行分隔。输入IP段(不可重复,例如:192.168.0.0/24)或IP地址(例如192.168.0.1)。支持IPv6地址、IPv4地址。 | **补充** - IPv4:最多可配置约2000个IPv4地址。 - IPv6:最多可配置约700个IPv6地址,不支持::缩写格式,例如:不支持FC00:0AA3::0023:0003:0300:300A:1234。支持输入IP段,例如:FC00:0AA3:0000:0000:0000:0000:0000:0000/48。 - IP地址字符串的总长度不能超过30 KB。 ## UA黑/白名单@ua User-Agent是HTTP请求头的一部分,包含用户访问时所使用的操作系统及版本、浏览器类型及版本等标识信息。 配置UA黑/白名单后,用户请求资源时,CDN将获取用户请求时HTTP请求头中的User-Agent字段,同配置中的黑/白名单进行匹配来实现对访客身份的识别和过滤,保证用户只从您允许的客户端访问。 ### 如何配置UA黑/白名单 访问控制UA黑/白名单页签,点击修改配置来配置规则。 ![配置UA黑/白名单](https://web-assets.dcloud.net.cn/unidoc/zh/cdn-safe-ua.png) |配置项 |参数 |说明 | |:-: |:-: |:-: | |名单类型 |黑名单 | HTTP请求头中的User-Agent字段命中黑名单的情况下,用户将无法资源。 | | |白名单 | 只有HTTP请求头中的User-Agent字段命中白名单的情况下,用户才能正常访问资源。 | | 规则 | UA列表 | 用竖线 “|” 分割多个值,支持 \* 星号通配符。例如:\*curl\*|\*IE\*|\*chrome\*|\*firefox\*。 | **补充** - 如果您需要对用户请求中携带了User-Agent请求头,但是值为空的情况做访问控制,您可以在规则中填写this-is-empty-ua来表示User-Agent值为空。 ### 注意事项 - 访问控制黑名单和白名单互斥,同一时间您只能选择其中一种方式。如需要切换请先删除配置后重新进行添加。 - 前端网页托管需绑定自定义域名后才可配置访问规则及查看报表。 ## 查看报表@report 通过访问报表功能,您可以查询云存储及前端网页托管的访问统计数据;通过分析数据,便于了解业务运行状况。 访问报表统计并展示了用户访问最多的Referer、URL和IP三项数据,您可以根据报表数据及业务需求来配置相应的访问控制规则以提高CDN的安全性。 |报表类型 |说明 | |:-: |:-: | |访问最多的Referer | 按流量倒序展示访问Referer流量、流量占比、访问次数和访问占比,最多100条记录 | |访问最多的URL | 按流量倒序展示URL的流量、流量占比、访问次数和访问占比,最多100条记录 | |访问最多的IP | 按流量倒序展示访问IP流量和访问次数,最多100条 |