api-security-hardening▌
aj-geddes/useful-ai-prompts · updated Apr 8, 2026
Comprehensive security middleware for REST APIs covering authentication, rate limiting, input validation, and attack prevention.
- ›Implements multiple security layers: helmet for HTTP headers, rate limiting, CORS configuration, input sanitization, and XSS/HPP protection
- ›Supports Node.js/Express and Python FastAPI with reference implementations for each framework
- ›Includes JWT-based authentication, input validation with sanitization, and security event logging
- ›Provides best practices
API Security Hardening
Table of Contents
Overview
Implement comprehensive API security measures including authentication, authorization, rate limiting, input validation, and attack prevention to protect against common vulnerabilities.
When to Use
- New API development
- Security audit remediation
- Production API hardening
- Compliance requirements
- High-traffic API protection
- Public API exposure
Quick Start
Minimal working example:
// secure-api.js - Comprehensive API security
const express = require("express");
const helmet = require("helmet");
const rateLimit = require("express-rate-limit");
const mongoSanitize = require("express-mongo-sanitize");
const xss = require("xss-clean");
const hpp = require("hpp");
const cors = require("cors");
const jwt = require("jsonwebtoken");
const validator = require("validator");
class SecureAPIServer {
constructor() {
this.app = express();
this.setupSecurityMiddleware();
this.setupRoutes();
}
setupSecurityMiddleware() {
// 1. Helmet - Set security headers
this.app.use(
helmet({
contentSecurityPolicy: {
directives: {
defaultSrc: ["'self'"],
// ... (see reference guides for full implementation)
Reference Guides
Detailed implementations in the references/ directory:
| Guide | Contents |
|---|---|
| Node.js/Express API Security | Node.js/Express API Security |
| Python FastAPI Security | Python FastAPI Security |
| API Gateway Security Configuration | API Gateway Security Configuration |
Best Practices
✅ DO
- Use HTTPS everywhere
- Implement rate limiting
- Validate all inputs
- Use security headers
- Log security events
- Implement CORS properly
- Use strong authentication
- Version your APIs
❌ DON'T
- Expose stack traces
- Return detailed errors
- Trust user input
- Use HTTP for APIs
- Skip input validation
- Ignore rate limiting
Discussion
Product Hunt–style comments (not star reviews)- No comments yet — start the thread.
Ratings
4.6★★★★★43 reviews- ★★★★★Kabir Wang· Dec 12, 2024
api-security-hardening reduced setup friction for our internal harness; good balance of opinion and flexibility.
- ★★★★★Dhruvi Jain· Dec 8, 2024
Solid pick for teams standardizing on skills: api-security-hardening is focused, and the summary matches what you get after install.
- ★★★★★Oshnikdeep· Nov 27, 2024
We added api-security-hardening from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.
- ★★★★★Diya Gonzalez· Nov 15, 2024
Keeps context tight: api-security-hardening is the kind of skill you can hand to a new teammate without a long onboarding doc.
- ★★★★★Amina Huang· Nov 3, 2024
I recommend api-security-hardening for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.
- ★★★★★Kabir Chen· Oct 22, 2024
Useful defaults in api-security-hardening — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.
- ★★★★★Ganesh Mohane· Oct 18, 2024
api-security-hardening fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
- ★★★★★Evelyn Thompson· Oct 6, 2024
api-security-hardening is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.
- ★★★★★Maya Gupta· Sep 17, 2024
Solid pick for teams standardizing on skills: api-security-hardening is focused, and the summary matches what you get after install.
- ★★★★★Kabir Ndlovu· Sep 13, 2024
api-security-hardening has been reliable in day-to-day use. Documentation quality is above average for community skills.
showing 1-10 of 43