腾讯云临时秘钥方案-文字识别示例

临时密钥使用指导

概述

腾讯云官网的SecretId 和 SecretKey是属于您的重要财产。在使用OCR业务时需要利用SecretId 和 SecretKey去进行认证签名计算,但是如果将SecretId 和 SecretKey写死在SDK的代码当中存在极大的泄露风险。因此,我们在支持使用固定密钥的同时,提供了一种使用临时密钥的方式。SDK可以使用临时密钥进行认证签名计算,去请求OCR识别接口。兑换的临时密钥具有时效性,可以大大降低SecretId 和 SecretKey泄露的风险。

临时密钥兑换流程

临时密钥兑换流程图如下所示:
临时密钥兑换流程图

如图所示临时密钥兑换的流程大致可描述为:

  1. 用户的客户端主动请求用户的服务器端来获取临时密钥。
  2. 用户的服务器接收到客户端请求后,将储存在服务器端的固定密钥作为参数去请求CAM服务,进行临时密钥兑换。
  3. CAM服务下发临时密钥给用户服务器。
  4. 用户服务器在接收到CAM服务生成的临时密钥以后,将此临时密钥下发到用户的客户端。
  5. 客户端获取到服务器下发的临时密钥后,调用SDK提供的更新临时密钥的接口将临时密钥更新。然后客户端SDK会使用更新后的临时密钥,去请求OCR服务。

参考链接:https://github.com/TencentCloud/tc-ocr-sdk/tree/master/%E4%B8%B4%E6%97%B6%E5%AF%86%E9%92%A5%E5%85%91%E6%8D%A2

一、OCR请求临时秘钥示例

api秘钥地址:https://console.cloud.tencent.com/cam/capi

获取联合身份临时访问凭证(临时秘钥获取文档):https://cloud.tencent.com/document/product/1312/48195

Policy入参中,文字识别OCR策略示例如下:

代码语言:javascript
复制
{
    "version": "2.0",
    "statement": [
        {
            "action": [
                   "ocr:*"
        ],
        "resource": "*",
        "effect": "allow"
        }
    ]
}
注意:编码前需要改下格式,如:
{ "version": "2.0", "statement": [{"action": ["ocr:*"],"resource": "*","effect": "allow"}]}
进行urlencode编码:
%7b+%22version%22%3a+%222.0%22%2c+%22statement%22%3a+%5b%7b%22action%22%3a+%5b%22ocr%3a*%22%5d%2c%22resource%22%3a+%22*%22%2c%22effect%22%3a+%22allow%22%7d%5d%7d

Policy入参中,语音识别ASR策略示例如下:

代码语言:javascript
复制
{
    "version": "2.0",
    "statement": [
        {
            "action": [
                   "asr:*"
        ],
        "resource": "*",
        "effect": "allow"
        }
    ]
}
注意:编码前需要改下格式,如:
{ "version": "2.0", "statement": [{"action": ["asr:*"],"resource": "*","effect": "allow"}]}
进行urlencode编码:
%7b+%22version%22%3a+%222.0%22%2c+%22statement%22%3a+%5b%7b%22action%22%3a+%5b%22asr%3a*%22%5d%2c%22resource%22%3a+%22*%22%2c%22effect%22%3a+%22allow%22%7d%5d%7d

在线API Explorer地址:https://console.cloud.tencent.com/api/explorer?Product=sts&Version=2018-08-13&Action=GetFederationToken&SignVersion=

测试结果:

生成临时秘钥

二、临时秘钥测试请求-文字识别服务示例

用临时秘钥调用ocr服务:https://console.cloud.tencent.com/api/explorer?Product=ocr&Version=2018-11-19&Action=GeneralBasicOCR&SignVersion=

需要点击更多选项,输入对应的Token值,Token有效期内调用成功(仅支持老版本的api exploer工具,目前推荐使用SDK代码提测)

注:Token有效期在“获取联合身份临时访问凭证”接口中设置(字段:DurationSeconds):默认1800秒,主账号最长可设定有效期为7200秒,子账号最长可设定有效期为129600秒。

调用ocr服务

Token过期后调用OCR失败:

调用ocr服务

对您有帮助,记得给我小编一个赞!