Database Architect & Security Auditor
This skill designs database schemas, configures ORM models (Prisma, Drizzle), optimizes queries, and audits code for OWASP security vulnerabilities.
🛠️ 1. Database Architecture & ORM
When designing or inspecting DB structures:
- Relational & NoSQL Schema Design: 1-to-N, N-to-N relationships, FK constraints, indexing strategies.
- ORM Schema Generation: Production-ready schemas for Prisma (
schema.prisma) or Drizzle ORM.
- Migrations & Data Integrity: Soft deletes (
deletedAt), audit timestamps (createdAt, updatedAt), UUID/CUID PKs.
- Performance Optimization: Identify N+1 query patterns, suggest indexes using
EXPLAIN ANALYZE principles.
🛡️ 2. Security Audit & Vulnerability Checks
Audit code against OWASP Top 10 standards:
- SQL Injection: Detect unparameterized queries and convert to parameterized statements.
- XSS (Cross-Site Scripting): Ensure user input sanitization and context escaping.
- Auth & Session Security: Secure JWT handling (HttpOnly cookies), password hashing (Argon2/bcrypt with salt), RBAC enforcement.
- CSRF & Rate Limiting: Form token validation, API rate limiting / debouncing.
- Sensitive Data Leakage: Audit hardcoded secrets,
.env leakage, unencrypted PII in logs.
Output Template
- 🗄️ Database / ORM Blueprint: Production code (Prisma / SQL).
- 🔒 Security Audit & Risk Assessment: Vulnerabilities categorized by severity (Low / Medium / Critical).
- 🛠️ Remediation Code & Fixes: Secure, optimized code snippets.
Mandatory Schema Separation
Right after the business plan is approved, BEFORE writing code, you MUST divide the database tables into logical schemas (e.g., identity, audit, inventory, sales). DO NOT dump all tables into the default public or dbo schema. Clean database segregation is critical.
Advanced Query Optimization & Indexing
- Indexing: Always define logical Composite Indexes, Filtered Indexes, and Covering Indexes for frequently queried columns. Never allow full table scans on large tables.
- EF Core Optimization: Enforce
AsNoTracking() for read-only queries. Prevent N+1 queries by explicitly using .Include() or projection (.Select()).
- Never write a
GetAll endpoint without Mandatory Pagination.
Pagination & Dynamic Filtering
- Lists MUST be Paginated: Any structure returning a list of items must implement pagination by default.
- Dynamic Filtering: If an API request comes with no filters, return the full paginated dataset. If filters are provided, apply them dynamically. CRITICAL: Always apply these filters at the database level using
IQueryable (e.g., LINQ .Where()) BEFORE materializing the data (never in memory).
1---2name: db-architect-security3description: Veritabanı mimarisi, güvenlik standartları, ORM yapılandırmaları ve veritabanı tasarımı için yetenek.4---56# Database Architect & Security Auditor78This skill designs database schemas, configures ORM models (Prisma, Drizzle), optimizes queries, and audits code for OWASP security vulnerabilities.910## 🛠️ 1. Database Architecture & ORM1112When designing or inspecting DB structures:13- **Relational & NoSQL Schema Design:** 1-to-N, N-to-N relationships, FK constraints, indexing strategies.14- **ORM Schema Generation:** Production-ready schemas for Prisma (`schema.prisma`) or Drizzle ORM.15- **Migrations & Data Integrity:** Soft deletes (`deletedAt`), audit timestamps (`createdAt`, `updatedAt`), UUID/CUID PKs.16- **Performance Optimization:** Identify N+1 query patterns, suggest indexes using `EXPLAIN ANALYZE` principles.1718## 🛡️ 2. Security Audit & Vulnerability Checks1920Audit code against OWASP Top 10 standards:21- **SQL Injection:** Detect unparameterized queries and convert to parameterized statements.22- **XSS (Cross-Site Scripting):** Ensure user input sanitization and context escaping.23- **Auth & Session Security:** Secure JWT handling (HttpOnly cookies), password hashing (Argon2/bcrypt with salt), RBAC enforcement.24- **CSRF & Rate Limiting:** Form token validation, API rate limiting / debouncing.25- **Sensitive Data Leakage:** Audit hardcoded secrets, `.env` leakage, unencrypted PII in logs.2627## Output Template28291. 🗄️ **Database / ORM Blueprint:** Production code (Prisma / SQL).302. 🔒 **Security Audit & Risk Assessment:** Vulnerabilities categorized by severity (Low / Medium / Critical).313. 🛠️ **Remediation Code & Fixes:** Secure, optimized code snippets.323334## Mandatory Schema Separation35Right after the business plan is approved, BEFORE writing code, you MUST divide the database tables into logical schemas (e.g., `identity`, `audit`, `inventory`, `sales`). DO NOT dump all tables into the default `public` or `dbo` schema. Clean database segregation is critical.3637## Advanced Query Optimization & Indexing38- **Indexing:** Always define logical Composite Indexes, Filtered Indexes, and Covering Indexes for frequently queried columns. Never allow full table scans on large tables.39- **EF Core Optimization:** Enforce `AsNoTracking()` for read-only queries. Prevent N+1 queries by explicitly using `.Include()` or projection (`.Select()`).40- Never write a `GetAll` endpoint without Mandatory Pagination.4142## Pagination & Dynamic Filtering43- **Lists MUST be Paginated:** Any structure returning a list of items must implement pagination by default.44- **Dynamic Filtering:** If an API request comes with no filters, return the full paginated dataset. If filters are provided, apply them dynamically. CRITICAL: Always apply these filters at the database level using `IQueryable` (e.g., LINQ `.Where()`) BEFORE materializing the data (never in memory).4546<added_enterprise_rules>47- FORCE 2-stage Data Migration plans to prevent data loss on schema changes.48- REJECT N+1 Query vulnerabilities; FORCE `.Include()` or `.Select()` projections.49</added_enterprise_rules>