开发者社区 > 云原生 > Serverless > 正文

函数计算中,有人用云函数3.0,使用自定义域名访问,开签名验证码吗?

函数计算中,有人用云函数3.0,使用自定义域名访问,开签名验证码吗?
求个demo签名怎么算都算不对。

展开
收起
多麻辣哦 2024-01-09 22:01:26 60 0
3 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    是的,阿里云函数计算支持使用自定义域名访问云函数,并且可以开启签名验证码功能。签名验证码是一种安全机制,用于验证请求的合法性和防止恶意攻击。

    在阿里云函数计算中,可以通过配置HTTP触发器来实现自定义域名访问。具体步骤如下:

    1. 在函数计算控制台中创建或选择一个云函数。
    2. 进入该云函数的配置页面,选择“触发器”选项卡。
    3. 点击“添加触发器”按钮,选择“HTTP”类型。
    4. 在HTTP触发器的配置页面中,填写自定义域名、路径等信息。
    5. 在“安全策略”选项卡中,勾选“开启签名验证”复选框。
    6. 点击“保存”按钮,完成配置。

    对于签名验证码的计算,需要使用阿里云提供的SDK或者API进行签名生成和验证。具体实现方式可以参考阿里云函数计算官方文档中的示例代码和说明。需要注意的是,签名验证码的有效期和密钥等参数需要根据实际情况进行设置和管理,以确保安全性和可靠性。

    2024-01-11 13:30:42
    赞同 展开评论 打赏
  • 在使用阿里云函数计算(FC)服务时,您可以通过自定义域名来访问部署好的云函数,并且可以通过签名机制来确保请求的安全性。签名验证码是为了验证请求的合法性,防止未授权的访问。

    当您设置好自定义域名,并希望通过该域名访问函数时,您需要确保请求中包含了正确的签名信息。签名的计算涉及到HTTP方法、Content-MD5、Content-Type、日期、规范化后的FC头(以x-fc-为前缀)以及规范化后的资源(通常是URL的Path部分)等多个元素。

    以下是一个简单的签名计算示例,假设您有一个云函数通过HTTP触发器暴露了一个API接口,您希望对该接口进行签名认证:

    1. 首先,确定您的函数已经通过HTTP触发器正确配置,并且您已经有了相应的阿里云访问密钥,包括AccessKeyId和AccessKeySecret。

    2. 当用户向您的函数发送请求时,您需要根据接收到的请求信息来计算签名。签名的计算可以使用HMAC-SHA256加密算法,并最后将结果转换为Base64编码。

    3. 签名的具体计算方法如下:

    signature = base64(hmac-sha256(HTTP_METHOD + "\n" + CONTENT-MD5 + "\n" + CONTENT-TYPE + "\n" + DATE + "\n" + CanonicalizedFCHeaders + CanonicalizedResource))
    

    其中:

    • HTTP_METHOD 是请求的HTTP方法,比如"GET""POST"等。
    • CONTENT-MD5 是请求内容的MD5值,如果没有提供,则为空字符串。
    • CONTENT-TYPE 是请求内容的类型,对于函数计算通常为"application/json"
    • DATE 是本次操作的日期和时间,格式为"RFC1123",如"Mon, 02 Jan 2006 15:04:05 GMT"
    • CanonicalizedFCHeaders 是由所有以"x-fc-"为前缀的HTTP头组成,并按照键名字母顺序排列的字符串。
    • CanonicalizedResource 是请求URL的Path部分,对于需要认证的HTTP触发器,如果包含查询参数,则对参数进行URL解码后,按字母顺序对参数进行排序。
    1. 计算出签名之后,您可以将签名附加到请求的Authorization头字段中,格式如下:
    Authorization = "FC " + accessKeyID + ":" + signature
    
    1. 发送请求时,确保将上述Authorization头添加到请求中,函数计算服务将根据此信息进行合法性验证。如果签名正确,且函数配置允许匿名访问,则请求将被执行;否则,如果签名错误或无效,函数计算将返回HTTP 403错误。

    请注意,在实际开发中,为了简化签名的计算和管理,您通常会使用阿里云提供的SDK来进行签名的自动处理。SDK内部实现了签名计算的逻辑,您只需要配置好AccessKey信息,就可以轻松地发送经过签名的请求。

    此外,函数计算也提供了API Gateway作为另一种选择,它可以作为API网关,处理API的发布、维护和流量管理等任务,同时支持多种身份验证方式,包括JWT、OAuth2.0等,适合处理更为复杂和安全的API请求场景。

    2024-01-10 09:00:12
    赞同 展开评论 打赏
  • https://help.aliyun.com/zh/sdk/product-overview/v3-request-structure-and-signature?spm=a2c4g.11186623.0.0.176545c5v1LZpX 3.0
    签名方式变了,要看这个文档。
    ——此回答整理自钉群:阿里函数计算官网客户

    2024-01-09 23:13:59
    赞同 展开评论 打赏

快速交付实现商业价值。

相关产品

  • 函数计算
  • 相关电子书

    更多
    Hologres Serverless之路:揭秘弹性计算组 立即下载
    Serverless开发平台: 让研发效能再提升 立即下载
    Serverless 引领云上研发新范式 立即下载