COS 数据工作流 + 云函数最佳实践:文件哈希值计算

2021-08-17 10:12:03 浏览数 (1)

01.

文件哈希值是什么?

文件哈希值,即文件内容的 HASH 值。是通过对文件内容进行加密运算得到的一组二进制值,主要用于文件校验或签名。正是因为这样的特点,它常常用来判断两个文件是否相同。COS 文件上传下载场景下,数据传输过程可能会出现错误,哈希值可用于对比确认已上传到 COS 的文件与本地文件的一致性。

02.

用户痛点

  • COS 对象只提供 CRC64 校验码

由于对象存储的特殊性,COS 存储的对象,目前只提供 CRC64 校验值。

  • 自定义计算哈希值有开发成本

有的开发者需要 MD5、SHA1、SHA256 等校验值,需要自行实现哈希计算过程。

03.

解决方案:

COS 工作流 云函数,自定义计算

利用 COS 数据工作流 云函数新特性,COS 为开发者提供了文件哈希值计算模板。用户可轻松实现自定义计算 COS 文件哈希值函数。

方案优势

  • 可视化操作

一键配置,简化开发流程,无需编码工作,大幅提升研发效率;

  • 多样化选择

支持 MD5 、SHA1 、SHA256、CRC64,满足各场景用户需求;

  • 自动化执行

文件上传 COS 后,即刻触发工作流开始计算校验码;

04.

「自定义计算」部署步骤

1. 创建 COS 工作流

到 COS 控制台存储桶详情,创建工作流,可以自定义过滤后缀过滤规则,创建自定义函数节点。

  • 控制台地址:https://console.cloud.tencent.com/cos5/bucket

2. 创建云函数 

在函数节点弹窗里,点击新建函数,浏览器新标签会打开创建云函数 SCF 的页面。

3. 创建云函数

    A. 选择「计算 COS 对象的哈希值」模板;

    B. 配置足够的内存、执行超时时间;

    C. 该函数模板支持两个环境变量;

  • hashTypeList 指定要计算的算法,可选,默认 ["crc64","md5", "sha1", "sha256"]
  • caseType 指定哈希值大小写,可选默认 lowercase,可以传入 uppercase

     D. 启用权限配置,绑定包含当前存储桶读写权限的角色,创建运行角色请看文档;

     E. 点击完成。

如需新建运行角色,可以选择「云函数」作为角色载体,配置 QcloudCOSFullAccess 权限,或新建角色自行绑定只包含所需存储桶度权限的桶写权限。

4. 回到刚才工作流的页面,选中刚创建的函数,并保存工作流。

5. 上传文件,查看工作流处理成功后,可以看到上传的文件已成功添加多个哈希头部。

更多自定义处理能力,等你来实现!

「COS 工作流 Serverless 云函数」更设有低至 1 元专属资源包,限量发放!点击「阅读原文」,立即领取超值特惠。


推荐阅读

One More Thing


欢迎进入千人 QQ 群 (871445853) 交流 Serverless!

  • GitHub: github.com/serverless
  • 官网: cloud.tencent.com/product/serverless-catalog

点击「阅读原文」,立即领取「COS 工作流 Serverless 云函数」超值特惠。

0 人点赞