implementing-api-gateway-security-controls
Ensina seu agente de IA a proteger aplicações contra ataques e construir APIs e sistemas de back-end.
O que ela faz
Esta ferramenta configura um ponto central de segurança para suas APIs. Ela protege suas APIs contra acessos não autorizados, limita quantas vezes elas podem ser chamadas e verifica se as requisições estão corretas.
Quando usar
- ✓Quando você precisa proteger várias APIs com as mesmas regras de segurança.
- ✓Ao configurar limites de uso para evitar sobrecarga.
- ✓Para verificar se os dados enviados para a API estão no formato esperado.
Exemplo do que pedir para a IA
“Configure a segurança da minha API para permitir apenas 100 chamadas por minuto e bloquear IPs maliciosos.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
A ferramenta aplica regras de segurança diretamente no 'gateway' da API, que é a porta de entrada para todas as requisições. Isso garante que as proteções sejam aplicadas antes mesmo que a requisição chegue ao serviço principal.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill implementing-api-gateway-security-controlsOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/mukul975/Anthropic-Cybersecurity-Skills/main/skills/implementing-api-gateway-security-controls/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Implementando Controles de Segurança de Gateway de API
Quando Usar
- Implantando uma camada centralizada de autenticação e autorização para APIs de microsserviços
- Implementando gerenciamento de limite de taxa, estrangulamento e cotas em todos os endpoints de API
- Configurando validação de requisição/resposta contra especificações OpenAPI no nível do gateway
- Configurando terminação TLS, TLS mútua e gerenciamento de certificados para tráfego de API
- Integrando regras de WAF com o gateway de API para bloquear injeção, XSS e padrões de ataque conhecidos
Não use como a única camada de segurança. Gateways de API fornecem defesa em profundidade, mas os serviços de backend também devem validar autorização e entrada.
Pré-requisitos
- Plataforma de gateway de API selecionada e implantada (Kong, AWS API Gateway, Azure APIM ou Apigee)
- Especificações OpenAPI/Swagger para todas as APIs de backend
- Certificados TLS para o domínio do gateway
- Provedor de identidade (IdP) configurado para OAuth2/OIDC (Okta, Auth0, Azure AD)
- Infraestrutura de monitoramento e logging (CloudWatch, Datadog, ELK)
- Endpoints de serviço de backend registrados e alcançáveis a partir do gateway
Fluxo de Trabalho
Etapa 1: Configuração de Segurança do Kong Gateway
# kong.yml - Declarative Kong configuration with security plugins
_format_version: "3.0"
services:
- name: user-service
url: http://user-service:8080
routes:
- name: user-api
paths:
- /api/v1/users
methods:
- GET
- POST
- PUT
- PATCH
- DELETE
strip_path: false
plugins:
# 1. Authentication: JWT validation
- name: jwt
config:
uri_param_names:
- jwt
header_names:
- Authorization
claims_to_verify:
- exp
maximum_expiration: 3600 # Max 1 hour token TTL
# 2. Rate Limiting
- name: rate-limiting
config:
minute: 60
hour: 1000
policy: redis
redis_host: redis
redis_port: 6379
fault_tolerant: true
hide_client_headers: false
limit_by: credential # Per-user, not per-IP
# 3. Request Size Limiting
- name: request-size-limiting
config:
allowed_payload_size: 1 # 1 MB max
size_unit: megabytes
# 4. IP Restriction (admin endpoints)
- name: ip-restriction
service: admin-service
config:
allow:
- 10.0.0.0/8
- 172.16.0.0/12
# 5. Bot Detection
- name: bot-detection
config:
deny:
- "sqlmap"
- "nikto"
- "nmap"
- "masscan"
# 6. CORS Configuration
- name: cors
config:
origins:
- "https://app.example.com"
methods:
- GET
- POST
- PUT
- PATCH
- DELETE
headers:
- Authorization
- Content-Type
credentials: true
max_age: 3600
# 7. Response Transformer - Remove sensitive headers
- name: response-transformer
config:
remove:
headers:
- X-Powered-By
- Server
add:
headers:
- "X-Content-Type-Options: nosniff"
- "X-Frame-Options: DENY"
- "Strict-Transport-Security: max-age=31536000; includeSubDomains"
- "Content-Security-Policy: default-src 'none'"
Etapa 2: Configuração de Segurança do AWS API Gateway
import boto3
import json
apigw = boto3.client('apigatewayv2')
# Criar API com TLS mútua
api_response = apigw.create_api(
Name='secure-api',
ProtocolType='HTTP',
DisableExecuteApiEndpoint=True, # Forçar domínio personalizado
)
api_id = api_response['ApiId']
# Configurar autorizador (JWT com Cognito)
authorizer = apigw.create_authorizer(
ApiId=api_id,
AuthorizerType='JWT',
IdentitySource='$request.header.Authorization',
Name='cognito-jwt-authorizer',
JwtConfiguration={
'Audience': ['your-app-client-id'],
'Issuer': 'https://cognito-idp.us-east-1.amazonaws.com/us-east-1_xxxxx'
}
)
# Criar rota com autorizador
apigw.create_route(
ApiId=api_id,
RouteKey='GET /api/v1/users',
AuthorizerId=authorizer['AuthorizerId'],
AuthorizationType='JWT',
)
# Configurar estrangulamento
apigw.create_stage(
ApiId=api_id,
StageName='prod',
DefaultRouteSettings={
'ThrottlingBurstLimit': 100,
'ThrottlingRateLimit': 50.0, # 50 requisições por segundo
},
AccessLogSettings={
'DestinationArn': 'arn:aws:logs:us-east-1:123456789:log-group:api-access-logs',
'Format': json.dumps({
'requestId': '$context.requestId',
…
Perguntas frequentes
O que é um API Gateway?
É como um porteiro para suas APIs. Ele recebe todas as requisições, verifica se são válidas e as encaminha para o serviço correto, aplicando regras de segurança no caminho.
O que é rate limiting?
É um limite de quantas vezes um usuário ou um IP pode acessar sua API em um determinado período, para evitar abusos ou sobrecarga.
Posso usar isso como única proteção?
Não. O API Gateway é uma camada importante de defesa, mas seus serviços internos também precisam ter suas próprias verificações de segurança.
Detalhes
Descrição original do autor
Configures API gateways such as Kong, AWS API Gateway, Azure APIM, or Apigee as a centralized security enforcement point, covering authentication enforcement, rate limiting and throttling, request validation, IP allowlisting, TLS termination, and threat protection. Use when securing API traffic at the gateway layer, setting up gateway-level authentication and quota management, or centralizing API
Popularidade
- Estrelas no GitHub
- 35 mil
- Posição no ranking
- #5823
- Licença
- Apache-2.0
- Atualizada em
- 31/08/2026
Comentários
- …
Mais skills deste repositório
abusing-dpapi-for-credential-access
Dá ao seu agente de IA instruções prontas para uma tarefa específica, para ele fazer melhor e mais rápido.
mukul975/Anthropic-Cybersecurity-Skills
abusing-shadow-credentials-for-privesc
Ensina seu agente de IA a escrever textos claros e bem estruturados.
mukul975/Anthropic-Cybersecurity-Skills
achieving-cmmc-level-2-compliance
Ajuda seu agente a preparar um ambiente para conformidade com CMMC Nível 2. Ele implementa requisitos de segurança e gerencia a documentação necessária.
mukul975/Anthropic-Cybersecurity-Skills
acquiring-disk-image-with-dd-and-dcfldd
Ajuda seu agente a criar cópias exatas de discos rígidos. Isso é útil para garantir que nenhuma informação seja perdida ou alterada durante investigações.
mukul975/Anthropic-Cybersecurity-Skills
Skills parecidas
django-security
Ajuda seu agente a implementar práticas de segurança em aplicações Django. Ele foca em autenticação, autorização e prevenção contra ataques comuns, garantindo um código mais seguro.
affaan-m/ECC
laravel-security
Ajuda seu agente a proteger aplicações Laravel contra ameaças. Implementa práticas de segurança para autenticação, autorização e prevenção de ataques comuns.
affaan-m/ECC
module-regression
Ajuda seu agente a gerenciar mudanças em projetos grandes. Garante que alterações em uma parte do código não quebrem outras partes.
affaan-m/ECC