概述
腾讯云COS对象存储,在使用的过程中,为了降低开发成本或单纯的出于“便捷”的考虑,往往将存储桶设置为公有读状态。但这也埋下了巨大的安全风险的种子,在各种流量盗刷场景下,会快速吸干账户余额,正可谓“公有一时爽,盗刷就破产”。
那么对于我们这些中小企业个人用户,盗刷都有哪些具体危害呢?
(资料图片仅供参考)
恶意竞争:盗刷流量的行为可能是某些企业或个人恶意竞争的手段,通过消耗竞争对手的流量来获取商业利益或个人利益。经济损失:盗刷流量会导致网站运营商面临经济损失,因为他们需要支付更多的非业务流量费用,同时也会影响网站或应用的正常业务体验等。法律维权:盗刷流量是一种违法行为,在盗刷导致损失后,需要收集相关证据,上报至网警备案,追根溯源进行打击。无形成本:包括证据采集,日志分析,多方沟通产生的时间等额外无形成本。那么有没有一种折中方案,允许我们在使用匿名用户访问的情况下的安全使用呢?既在常态模式下方便用户访问,又能在极端情况下为我们及时止损。
下面就介绍一下用过使用SCF来自动实现COS的权限修改的方式。
整体的逻辑为 创建SCF云函数-->定时拉取存bucket的准实时流量-->判断流量是否超过阈值-->修改为私有读方式
功能事件图
实现方式
功能介绍与组件
方案中所用到的产品包括
1.云函数(Serverless Cloud Function,SCF)
云函数的主要作用和优势
1)可以创建主动型触发事件,可根据需要设定触发周期。
2)已内置腾讯云 通用云openapi SDK以及COS SDK库,无需外部引用。
3)同园区与COS内网互访,不产生外网流量。
2.腾讯云可观测平台(Tencent Cloud Observability Platform,TCOP) AKA :(云监控)
云监控主要作用
1)多维度采集COS监控项,包括外网流量,请求次数,CDN回源流量,跨地域复制流量等等。更多指标详见
https://cloud.tencent.com/document/product/248/45140
2)数据采集延时低,通过实际测试,一般10分钟内可采集到分钟级数据指标。
实现逻辑与步骤
云监控调用方法
# MetricName 参数 InternetTraffic 指的是外网下行流量 req = models.GetMonitorDataRequest() params = { "Namespace": "QCE/COS", "MetricName": "InternetTraffic", "Period": 60, "StartTime": time_start.strftime("%Y-%m-%d %H:%M:%S"), "EndTime": time_end.strftime("%Y-%m-%d %H:%M:%S"), "Instances": [ { "Dimensions": [ { "Name": "bucket", "Value": bucket } ] } ] } req.from_json_string(json.dumps(params))
返回数据
{ "Response": { "DataPoints": [ { "Dimensions": [ { "Name": "bucket", "Value": "wainsun-1253985742" } ], "Timestamps": [ 1680576000, 1680576060, 1680576120, 1680576180, 1680576240, 1680576300 ], "Values": [ 155189649, 169098752, 0, 0, 0, 0 ] } ], "EndTime": "2023-04-04 10:45:00", "MetricName": "InternetTraffic", "Msg": "", "Period": 60, "RequestId": "57d5d310-0989-47db-8982-26b1903afe85", "StartTime": "2023-04-04 10:40:00" }}
返回结果中
Timestamps以及对应的Values是我们得到并用于判断的数据信息。通过简单的SUM就可以得到这个时间段的总流量,从而做出限制性操作。
实践案例
介绍一个具体的实践案例,展示如何使用以上方法来实现流量费用封顶。
1. 登录腾讯云官网,进入到SCF控制台--函数服务--选择园区--点击“新建”按钮
2. 选择模板创建--过滤 timer关键词--找到定时拨测 标签:python3.6的模板
3. 确认配置
1)修改自定义函数名称,修改对应函数描述。
2)确认函数代码执行环境为运行环境:Python3.6执行方法: index.main_handler
3)启动日志,选择默认配置
4)修改触发器为自定义创建,触发方式定时触发,周期修改为每1分钟
5)点击完成
4. 创建函数并设置函数代码
创建过程很快,十几秒可创建成功。
进入到函数管理--函数代码--复制文章下面附件中的函数代码内容并粘贴进来
注意,这里需要按照自己的环境,修改4个必选变量
secret_id 和 secret_key
这个是账号的API 秘钥,建议使用子账号秘钥,子账号需要授权COS存储桶的putbucketacl权限。
region
这个是存储桶所在地域,更多地域信息可参见 COS地域列表
bucket
这个是存储桶的完整名称,通常为bucket-appid的形式,这个可以在COS控制台的桶列表中查看到。
其他可选变量
"MetricName":"InternetTraffic",
这里默认设置为公网下行流量,其他监控指标详见
if_flow>100*1024*1024:#超过100MB流量阈值
这里默认设置100MB,主要用于测试,测试完成后根据业务所需要的限额流量自行设置。
5. 部署与测试
点击测试,会自动执行 :部署+1次函数 触发
执行正常可以看到测试成功,并返回执行日志。
6. 验证有效性
设置对应存储桶权限为公共读权限,并验证匿名访问一个对象,正常可以返回200 ok
找到一个大于我们设置阈值100MB的文件,再次下载。
注意:不要使用同地域的CVM或docker测试,同地域走内网,不会产生公网下行流量。
大约10分钟后,可以看到云函数检查到了公网下行流量超过阈值,并将存储桶ACL改为私有。
控制台检查并再次匿名测试下载资源
均符合预期。
这样就实现了盗刷场景发生后自动及时止损。这里为什么会延时10分钟的,这个是因为存储桶数据的采集,向云监控推送,统一计算等等均需要时间。所以根据实践测试,将延时设置为10分钟。
总结
上面通过这个实践,我们将SCF,COS,云监控整合在一起,通过基础数据采集,事件触发,ACL修改等方式,实现了盗刷即停服的保护措施,同时又弥补了告警+人工处理的时效性低的问题。针对于费用敏感又必须使用匿名方式对外提供访问的用户,是一个比较适合的方案。
多说几句。
上面的实践是通过检测外网下行流量并修改存储桶的ACL的方式实现止损。
如果使用CDN(回源鉴权)+COS的方式,那么修改私有是没有效果的,因为CDN的回源参数都会带上签名,这样的场景就需要修改授权CDN的策略来实现止损,(需要将授权给CDN策略的allow改为deny),接口调用方式详见。如果有朋友需要也可以在下面留言,我会再补充文档。
再多说几句。
如果对停服敏感,可以将代码中这段注释去掉。这样就可实现盗刷流量峰值过去后即恢复服务。但可能有反复盗刷的情况。对于结果优劣各位亲家自行评估。
标签:
-
世界焦点!使用腾讯云SCF实现COS费用封顶的最佳实践
腾讯云COS对象存储,在使用的过程中,为了降低开发成本或单纯的出于“便捷”的考虑,往往将存储桶设置为公有读状态。但这也埋下了巨大的安...
-
水庆霞:中国女足在拼抢、队形方面有很大改变 张琳艳表现很突出-时快讯
直播吧4月7日讯据《足球报》报道,中国女足0-0战平瑞士女足后,中国女足主帅水庆霞对比赛做出了点评。——点评比赛这场对
-
世界热点!中金环境等杭州新设工业设备公司 含物联网技术研发业务
南方财经4月7日电,企查查APP显示,近日,杭州智选工业设备有限公司成立,注册资本1000万元,经营范围包含:智能控制系统集成;物联网技术研发
-
原子能机构专家评估哈萨克斯坦在核基础结构发展方面进展 世界热闻
据哈萨克斯坦能源部新闻处报道,国际原子能机构(IAEA)专家4月1日表示,哈萨克斯坦在执行上一次综合核基础设施审查(INIR)任务的建议方面取得了
-
今日热搜:可孚医疗:连续3日融资净偿还累计821.61万元(04-06)
2023年4月6日可孚医疗连续3日融资净偿还累计821 61万元
-
环球今亮点!《光明日报》聚焦山东卫视《超级语文课》:这堂语文公开课缘何走红网络?
《光明日报》聚焦山东卫视《超级语文课》:这堂语文公开课缘何走红网络?
-
被狗咬伤的伤口图片-被狗咬伤后处理伤口的正确方法
1、生活中,宠物越来越受到人们的喜爱,被狗咬伤者时有发生,预防狂犬病,首先要做到对伤口的正确处理。2、1 被咬后立即挤压伤口排去带毒液的
-
价值近1400亿 空客获得中国160架大飞机订单:最高航程1.4万公里_环球热讯
价值近1400亿空客获得中国160架大飞机订单:最高航程1 4万公里
-
【报资讯】从董事长失联到强制退市 千亿黑马新力成首家“陨落”的停牌房企
观点网新力控股还是走到了退市这一步。4月6日消息,香港联交所宣布,由2023年4月13日上午9时起,新力控股(集团)有限公司的上市地位将根据《
-
天天微资讯!香港泼水节系列活动正式举行 感受炽热气氛
李志华摄泰式市集摆放各种泰国服饰及食品等让入场人士选购。李志华摄 4月6日,2023年的香港泼水节由即日起至10日在香港荔枝角D2place举行,
-
今日热讯:文明让城市更温暖——泰安持续推动文明城市创建常态长效(下)
泰安日报社·最泰安讯创建为民惠民靠民。一座城市前进的步伐,不仅在于高楼林立、车水马龙的“面子”,还在于柴米油盐、最具烟
-
同样是私密视频被泄露!风波后首现身的景甜,和当年的阿娇截然不同
经历数年后张继科的真实面目终于被袒露在世人面前,张继科抵押景甜私密照贷款的无底线行为,让张继科杰出运动员的人设彻底崩塌。正所谓得道者
-
沉浸式体验“花+”文化 成都文化公园重现千年花市盛景
四川新闻网-首屏新闻成都4月6日讯(记者乔永祯)近日,以成都市第五十九届花会展为契机,一批生动丰富的活动在“青羊花肆—花园中心”精彩...
-
杜伟民:康泰生物持续深化疫苗国际合作,造福更多民众健康
随着疫苗技术的迭代升级和重磅疫苗产品不断推出,全球疫苗市场规模及增速有望进一步扩容,越来越多的中国企业通过“中国疫苗、多
-
刘树根任西华大学党委书记,李秋实任西华大学党委副书记、校长
4月6日上午,西华大学召开教师干部大会,宣布省委、省政府关于学校党委书记和党委副书记、校长的任免决定。经省委研究同意,刘树根同志任西华
-
走文化廊道 看高质量发展丨泰安东平港助力“北货南下” 全封闭地下皮带长廊装船保运河生态_全球观点
记者:李义方汪雪然
-
焦点滚动:螺纹05合约下方成本线附近存在支撑丨就市论市
申万期货分析师李公然分析称,传统季节性旺季背景下,4月表需中枢仍有一定保证,成材在有限的库存压力以及相较于去年更快的去库速度下,05合约
-
绝地求生:落地最该做的4件事,能提升60%吃鸡率
落地瞬间,你身边可能到处都是敌人,虽然这个时候我们继续手里拿着一把枪,随便一把枪就行。但如果这个时候你跟前有着一辆载具,那你大可放心
-
未来两天,“海巡06”将持续在台湾海峡中北部开展巡航巡查行动
福建海事供图4月5日上午9时,由台湾海峡大型巡航救助船“海巡06”轮领衔的海事执法船艇编队驶离福建海事局平潭海事监管基地,开启台湾海峡...
-
《病毒演义:人类与病毒的博弈》一书荣获“典赞•科普三秦”年度十大科普作品-全球资讯 世界速递
《病毒演义:人类与病毒的博弈》一书荣获“典赞•科普三秦”年度十大科普作品
-
合盛硅业:公司通过子公司布局了第三代半导体碳化硅产业的研发与制造|每日快讯
每经AI快讯,有投资者在投资者互动平台提问:董秘你好,请问公司有没有半导体相关的业务。合盛硅业(603260 SH)4月
-
北约秘书长:将向乌克兰长期提供武器_今日精选
当地时间5日,为期两天的北约外长会在比利时布鲁塞尔结束。在会议结束后的发布会上,北约秘书长斯托尔滕贝格表示,北约已开始着手制订计划,为
-
动力学方程中的h怎么求_动力学方程 头条
1、动量矩定理动力学普遍定理之一,它给出质点系的动量矩与质点系受机械作用的冲量矩之间的关系。2、2、动能定理动能具有瞬时
-
知乎抖音讲起“新故事”,网文市场格局生变?|全球热议
网文赛道中的新玩家和新故事。
-
科诺锅炉控制器_科诺锅炉
1、操作科诺十吨蒸汽锅炉人员首先要具备司炉资格,做到持证操作。操作负责人应认真阅读设备使用说明书,熟练掌握安全操作知识及
-
仙人掌属于什么科的植物(仙人掌科植物品种大全)
仙人掌属于什么科的植物?仙人掌属于什么科的植物?双子叶显花植物(特征为具两片子叶)的一类。属石竹目(Caryophyllales)仙人掌科(Cactaceae)。
-
全球快报:全国春灌全面展开 灌溉面积超1.2亿亩
央视网消息(新闻联播):水利部最新调度显示,截至4月4日,全国有灌溉任务的3800多座水库已累计放水130亿立方米。其中,北方10个省区已有1148
-
【快播报】羊肚菌怎么洗才能干净_清洗羊肚菌的方法
解答:1、洗羊肚菌的时候,不能用开水,也不能用冷水。你需要用45-50摄氏度左右的温水。这个温度既能让羊肚菌里的香味散发
-
全球连线丨寻味二十四节气:清明螺蛳赛肥鹅-全球关注
原标题:全球连线丨寻味二十四节气:清明螺蛳赛肥鹅4月5日是中国二十四节气中的第五个——清明。有句古话:“清明螺蛳赛肥鹅。
-
张继科的恶:吐槽樊振东、曝马龙隐私,他还被国家队开除
张继科曾在采访中大言不惭地说:你永远可以相信张继科的人品。如今再看,相当讽刺。其实关于张继科的人品,当时他在队内时,刘国梁就说过很多