api-security-best-practices

实施安全的API设计模式,包括身份验证、授权、输入验证、速率限制,以及防范常见的API漏洞。

作者

安装

热度:7

下载并解压到你的 skills 目录

复制命令,发送给 OpenClaw 自动安装:

下载并安装这个技能 https://openskills.cc/api/download?slug=sickn33-skills-api-security-best-practices&locale=zh&source=copy

API Security Best Practices - 构建安全可靠的 API 接口

技能概述

API Security Best Practices 是一个专注于 API 安全的智能助手,帮助开发者在设计和实现 API 时做好认证授权、输入验证、限流防护和漏洞防御,涵盖 REST、GraphQL 和 WebSocket 等多种 API 类型。

适用场景

1. 设计和开发新的 API 接口

在开始开发新接口之前,帮你规划安全架构:选择合适的认证方式(JWT、OAuth 2.0 或 API Key)、设计权限控制模型、规划输入验证规则、配置合理的限流策略。

2. 加固现有 API 的安全性

对已有的 API 进行安全审计和加固:检查认证授权漏洞、修复输入验证问题、添加限流保护、加强数据传输加密、优化错误处理避免信息泄露。

3. 应对 API 安全问题和攻击

当 API 遭遇攻击或发现安全问题时,提供解决方案:应对恶意刷接口、修复注入漏洞、处理认证绕过、配置防护规则、进行安全加固。

核心功能

1. 认证与授权实现

帮你实现完整的 API 认证授权体系:

  • JWT Token 认证的完整实现(登录、验证、刷新)

  • OAuth 2.0 集成指南

  • 基于角色的权限控制(RBAC)设计

  • 多因素认证(MFA)实现方案

  • 会话管理和 Token 安全配置
  • 2. 输入验证与注入防护

    防止各类注入攻击的安全实践:

  • 请求参数验证和 Schema 校验

  • SQL 注入防护(参数化查询、ORM 使用)

  • XSS 和命令注入防御

  • 文件上传安全验证

  • 输出 sanitization 防止 XSS
  • 3. 限流与 DDoS 防护

    保护 API 免受滥用和攻击:

  • 按用户/IP 的限流实现

  • Redis 分布式限流方案

  • 分层限流策略(普通接口 vs 认证接口)

  • 安全头部配置(Helmet.js)

  • 请求配额和降级处理
  • 常见问题

    API 认证和授权有什么区别?

    认证(Authentication)是验证"你是谁",确认用户身份;授权(Authorization)是验证"你能做什么",确认用户权限。常见的做法是先用 JWT 或 Session 完成认证,然后通过 RBAC 或 ABAC 系统判断用户是否有权限访问特定资源。很多安全漏洞源于只做了认证而忽略了授权检查。

    如何防止 API 被恶意刷接口?

    最有效的方案是实施多层限流:对普通 API 使用 IP 级限流(如 15 分钟 100 次),对认证接口使用更严格的限流(如 15 分钟 5 次)。推荐使用 Redis 存储计数器实现分布式限流。同时配合:增加验证码、识别异常行为模式、设置账户级别的配额限制、监控高频请求并自动封禁。

    JWT 和 OAuth 2.0 应该怎么选?

    JWT 适合构建自己的认证系统,简单直接、无状态、易于扩展;OAuth 2.0 适合需要第三方登录或复杂授权场景,比如支持微信登录、Google 登录,或者需要跨服务授权访问。大多数中小型应用用 JWT 就足够了,大型平台或有开放 API 需求的场景考虑 OAuth 2.0。