https://github.com/tianli0/tencentcdnauthentication
简单的腾讯云鉴权服务
https://github.com/tianli0/tencentcdnauthentication
authentication-backend cloud tencent-cloud
Last synced: 4 months ago
JSON representation
简单的腾讯云鉴权服务
- Host: GitHub
- URL: https://github.com/tianli0/tencentcdnauthentication
- Owner: TIANLI0
- License: mit
- Created: 2023-09-19T23:55:11.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-09-26T07:10:52.000Z (over 2 years ago)
- Last Synced: 2024-01-25T12:09:09.844Z (over 2 years ago)
- Topics: authentication-backend, cloud, tencent-cloud
- Language: Go
- Homepage:
- Size: 45.9 KB
- Stars: 5
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# TencentCDNAuthentication
简单的腾讯云鉴权服务,支持QPM IP_QPM 等限制,也可在高响应次数/高流量的场景下自动关闭CDN,适用于腾讯云的远程鉴权服务。
注意:上线生成环境前要测试CDN回源节点连通性!!!由于腾讯云CDN限制,只支持单CDN熔断。

## How To Use?
1. 从release下载适用于对应版本的二进制可执行文件。
2. 部署至服务器,根据说明配置.env文件。
3. 配置blacklist.json文件或者whitelist.json文件(如果未配置其中一个文件,则将判断为运行,比如我没有配置whitelist,那么将所有路径及referer视为白名单,blacklist同理)。具体配置请参考仓库。
4. 开放相应端口或者启用反向代理,程序将运行在`5276`端口。
5. CDN启用相关配置(请求方法使用GET,根据需求配置其他选项,为防止程序崩溃或者服务崩溃影响您的业务,建议将超时时长调低)
Tips: 当然,你可以将超时设置调的尽量低,仅仅将此程序视为面对大量访问情况下的分析工具,触发max_QPM后将会自动关停腾讯云CDN。
## .env配置说明
| 配置项 | 示例 | 是否必填 | 说明 |
| ----------- | :--------- | -------- | :----------------------------------------------------------- |
| secretID | 114514 | 否 | 腾讯云secretID,需前往[官网](https://console.cloud.tencent.com/cam/capi)获取,注意KEY安全 |
| secretKey | 114514 | 否 | 腾讯云secretKey,需前往[官网](https://console.cloud.tencent.com/cam/capi)获取,注意KEY安全 |
| cdn_domain | 114514.com | 否 | 需要自动关闭的CDN站点域名 |
| QPM | 10000 | 是 | 一分钟内的QPM限制,超过限制将返回403 |
| ip_QPM | 500 | 是 | 单IP一分钟内的QPM限制,超过限制将返回403 |
| max_QPM | 500000 | 是 | 一分钟内的QPM限制,超过限制将关闭CDN,如果未配置secret建议将此项配置尽量高 |
| max_traffic | 1024 | 否 | 一天内CDN流量限制,单位为MB,注意:由于无法获取CDN实际实时流量,此项为估计值。当触发后将会关停CDN。设置为0或者不填写则不启用统计 |