腾讯云智聆口语评测getAuthorization 接口说明-教育服务解决方案

接口描述

用于客户端 SDK(Web SDK和 微信 H5)获取临时授权凭证注意建议用户使用子账号密钥 + 环境变量的方式调用 SDK,提高 SDK 使用的安全性。为子账号授权时,请遵循 最小权限指引原则,防止泄漏其他资源。本文将介绍 临时密钥(临时访问凭证)的使用方式,如果您一定要使用永久密钥,建议遵循 最小权限指引原则 对永久密钥的权限范围进行限制。本文示例遵循 最小权限指引原则,仅提供 soe:TransmitOralProcessWithInit 接口权限。

请求方式

GET

请求地址

https://127.0.0.1:8080/getAuthorization (以实际提供接口地址为准)

请求参数

响应参数

主要响应参数说明

属性名 类型 必填 参数描述
Token String 获取回来的临时密钥的 Token
TmpSecretId String 获取回来的临时密钥的 TmpSecretId,用于前端计算签名
TmpSecretKey String 获取回来的临时密钥的 TmpSecretKey,用于前端计算签名
ExpiredTime String 获取回来的临时密钥的 ExpiredTime,过期时间

响应示例

{    "Credentials":{        "Token":"kTRt***Jb7m",        "TmpSecretId":"AKID****CjE6",        "TmpSecretKey":"Eo28***7ps="    },    "Expiration":"2023-06-14T05:06:57Z",    "ExpiredTime":1686719217,    "RequestId":"59a5e07e-4147-4d2e-a808-dca76ac5b3fd"}

请求示例

请求流程

参考 STS 控制台 或者文档示例获取临时授权凭证,提供 Web 服务,将项目部署上线即可。

服务端SDK 临时访问凭证示例
Python SDk 临时授权凭证
Java SDK 临时授权凭证
PHP SDK 临时授权凭证
Go SDK 临时授权凭证
NodeJS SDK 临时授权凭证
.NET SDK 临时授权凭证

Python 示例

使用 flask 框架,需要使用 pip 安装以下依赖:

tencentcloud-sdk-pythonflaskflask_corsgevent

示例代码:

import jsonfrom flask import Flask, request, render_templatefrom flask_cors import CORSfrom gevent import pywsgi
from tencentcloud.common import credentialfrom tencentcloud.common.profile.client_profile import ClientProfilefrom tencentcloud.common.profile.http_profile import HttpProfilefrom tencentcloud.common.exception.tencent_cloud_sdk_exception import TencentCloudSDKException
app = Flask(__name__)
CORS(app) # 允许跨域
@app.route("/getAuthorization", methods=["GET"]) #通过该地址请求接口,只能使用get方法def getAuthorization(): try: # 实例化一个认证对象,入参需要传入腾讯云账户secretId,secretKey cred = credential.Credential("", "")
# 实例化一个http选项,可选的,没有特殊需求可以跳过。 httpProfile = HttpProfile() httpProfile.reqMethod = "POST" # post请求(默认为post请求) httpProfile.reqTimeout = 30 # 请求超时时间,单位为秒(默认60秒) httpProfile.endpoint = "sts.tencentcloudapi.com" # 指定接入地域域名(默认就近接入)
# 实例化一个client选项,可选的,没有特殊r需求可以跳过。 clientProfile = ClientProfile() clientProfile.signMethod = "TC3-HMAC-SHA256" # 指定签名算法(默认为HmacSHA256) clientProfile.unsignedPayload = True clientProfile.httpProfile = httpProfile
from tencentcloud.sts.v20180813 import sts_client, models client = sts_client.StsClient(cred, "ap-guangzhou", clientProfile)
req = models.GetFederationTokenRequest() req.Name = "soe" req.Policy = "{\"version\": \"2.0\",\"statement\": {\"effect\": \"allow\",\"action\": [\"soe:TransmitOralProcessWithInit\"],\"resource\": \"*\"}}" # req.DurationSeconds = 10 # 请求服务,获取结果 resp = client.GetFederationToken(req) json_resp = resp.to_json_string() json_loads = json.loads(json_resp) # json_dumps = json.dumps(json_loads) return json_loads # 回调

except TencentCloudSDKException as err: return err

if __name__ == '__main__': server = pywsgi.WSGIServer(('0.0.0.0', 8080), app) server.serve_forever()



腾讯云官网1折活动,限时活动,即将结束,速速收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利。同意关联立享优惠

发表评论