https://github.com/tencentyun/qcloud-cos-sts-sdk
QCloud COS STS SDK for Backend Server
https://github.com/tencentyun/qcloud-cos-sts-sdk
Last synced: about 2 months ago
JSON representation
QCloud COS STS SDK for Backend Server
- Host: GitHub
- URL: https://github.com/tencentyun/qcloud-cos-sts-sdk
- Owner: tencentyun
- License: mit
- Created: 2018-05-21T03:34:18.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2025-05-15T02:50:22.000Z (about 2 months ago)
- Last Synced: 2025-05-15T03:41:31.619Z (about 2 months ago)
- Language: Java
- Homepage:
- Size: 439 KB
- Stars: 206
- Watchers: 56
- Forks: 187
- Open Issues: 21
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# QCloud COS 服务临时密钥 SDK
本 SDK 可以帮助您在后台快速搭建一个临时密钥服务,用于访问腾讯云 COS 下的资源。
## 访问管理
腾讯云 COS 服务在使用时需要对请求进行访问管理。通过临时密钥机制,您可以临时授权您的 App 访问您的存储资源,而不会泄露您的永久密钥。密钥的有效期由您指定,过期后自动失效。**通常,我们都不建议您把永久密钥放到客户端代码中。**本文主要介绍如何在后台快速搭建一个临时密钥服务,通过生成的临时密钥来对上传或者下载请求进行签名,从而保证您数据的安全性。
## 架构
### 整体架构图如下所示:

其中:
- 应用 APP:即用户手机上的 App。
- COS:[腾讯云对象存储](https://cloud.tencent.com/product/cos),负责存储 App 上传的数据。- CAM:[腾讯云访问管理](https://cloud.tencent.com/product/cam),用于生成 COS 的临时密钥。
- 应用服务器:用户自己的后台服务器,这里用于获取临时密钥,并返回给应用 App。
## 获取永久密钥
临时密钥需要通过永久密钥才能生成。请登录 [腾讯云访问管理控制台](https://console.cloud.tencent.com/cam/capi) 获取,包含:
- SecretId
- SecretKey
## 如何快速搭建临时密钥服务### 集成 SDK 到 您的后台服务
如果您已经有独立的后台服务,我们建议您直接集成我们提供的 SDK 到现在的后台服务中。
#### 第一步:集成服务器 SDK
目前我们提供了以下语言的 SDK,帮忙您快速在后台集成生成密钥的功能,您可以根据自己后台的架构自行选择:
* Java
* Node.js
* PHP
* Python
* Go
* .NET#### 第二步:发布 Web API
将您的服务以 Web API 的方式发布出去,这样您授权的客户端 App,如 Android、iOS,Web端,都可以通过标准的 HTTP 协议请求到临时密钥,访问 COS 服务。
#### 高级功能
您可以通过 `Scope` 的方式更细粒度的控制返回密钥的权限,详细请看 [细粒度控制权限](https://github.com/tencentyun/qcloud-cos-sts-sdk/blob/master/scope.md)。
#### 其他语言
如果您需要其他语言的 SDK,可以参考社区提供的版本。
| 语言 | 作者 | 仓库 |
| ----------- | ----------- |----------- |
| elixir | @scottming |[scottming/qcloud_cos_sts](https://github.com/scottming/qcloud_cos_sts) |