API 密钥泄漏后如何无停机处置:双密钥轮换、审计与最小权限实践
## 适用场景 代码仓库、CI 日志、工单截图或聊天记录中出现了生产 API 密钥。密钥仍在被多个服务使用,直接禁用可能造成业务中断,但继续保留又会扩大攻击窗口。 本文面向服务到服务调用的静态 API 密钥,给出一套可执行的处置流程:先确认影响范围并限制风险,再创建权限更小的新密钥,通过短暂的双密钥窗口迁移调用方,
Tag
包含这个标签的文章。
## 适用场景 代码仓库、CI 日志、工单截图或聊天记录中出现了生产 API 密钥。密钥仍在被多个服务使用,直接禁用可能造成业务中断,但继续保留又会扩大攻击窗口。 本文面向服务到服务调用的静态 API 密钥,给出一套可执行的处置流程:先确认影响范围并限制风险,再创建权限更小的新密钥,通过短暂的双密钥窗口迁移调用方,
## 适用场景 本文适用于网站、API 网关或反向代理已经配置 HTTPS,但出现“浏览器能访问,部分 Java、Android、容器或命令行客户端却握手失败”的场景。典型报错包括 `unable to get local issuer certificate`、`PKIX path building failed`
## 适用场景 业务使用 RS256 JWT 在网关、API 服务和后台任务之间传递身份。为了满足密钥泄露应急、合规轮换或证书到期要求,需要定期替换签名私钥,但又不能让尚未过期的旧令牌突然失效。 本文给出一套可直接落地的轮换方法:令牌头携带 `kid`,验证端同时信任新旧公钥,签发端再切换当前私钥,最后根据令牌最长
## 适用场景 支付、订单、代码托管或消息平台通过 Webhook 主动回调业务系统。接口已经校验 HMAC 签名,但偶尔仍出现同一事件被重复执行,甚至攻击者截获一条合法请求后,可以在数小时后原样重放。 本文以 Python 3.11、FastAPI 和 Redis 为例,实现一套可直接落地的接收端:对原始请求体进
## 适用场景 业务通过 Nginx 上传图片、安装包、备份文件或导入数据时,小文件正常,大文件刚提交便收到 `413 Request Entity Too Large`。应用日志没有请求记录,客户端通常只看到一个 Nginx 错误页。 本文以“上传 80 MB 压缩包失败、10 MB 图片正常”为例,说明怎样确认
## 适用场景 业务服务部署在负载均衡、CDN、Kubernetes Ingress 或四层代理之后。应用日志中的 `remote_addr` 全是代理的内网地址,限流、风控和审计都无法识别真实访问者;更危险的是,直接信任请求携带的 `X-Forwarded-For`,会让攻击者伪造来源 IP 绕过白名单。 本文以
## 适用场景 适用于运行在 Linux 虚拟机、物理机或容器节点上的 Web 服务。业务表现为同一版本在部分机器上间歇出现登录失效、JWT `token is not active` / `token expired`、HTTPS 握手失败或调用云 API 返回签名过期;重试、重启应用有时短暂恢复,但问题会再次出现
### 1.首先找到桌面的OPENVPN图标 ### 2.右键点击图标的属性,在目标路径的最后面添加 --connect client.ovpn,如下图  ### 3.按Win
#### 安装EPEL源 ``` yum -y install epel-release ``` #### 安装openvpn、easy-rsa ``` yum install easy-rsa openssh-server lzo openssl openssl-devel openvpn NetworkMan
本文根据官方提供的server.ovpn示例文件直接翻译得出。server.conf ``` ################################################# # 针对多客户端的OpenVPN 2.0 的服务器端配置文件示例 # # 本文件用于多客户端<->单服务器端的OpenVPN