sql-security

Enforce prepared statements and whitelisted identifiers for TapScore database operations.

Updated May 25, 2025
One-click install
npx skills add https://github.com/marcusta/golf-serie --skill sql-security-marcusta
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: sql-security
Source: https://github.com/marcusta/golf-serie/tree/main/.claude/skills/sql-security
Command: npx skills add https://github.com/marcusta/golf-serie --skill sql-security-marcusta

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill enforces safe database access practices across the TapScore backend, preventing SQL injection and ensuring reliable transactions.

Core Features & Use Cases

  • Use prepared statements for all queries to eliminate injection risk.
  • Validate transaction boundaries and error handling to ensure data integrity.
  • Enforce safe handling of dynamic identifiers via whitelisting and controlled schemas.

Quick Start

Audit existing queries and rewrite them to use parameterized statements, then run the security checklist to verify no string concatenation is used.

Frequently Asked Questions about sql-security

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I prevent SQL injection in backend database operations?

To prevent SQL injection in backend database operations, use prepared statements for all queries, inserts, updates, and deletes. Validate transaction boundaries and enforce whitelisting for dynamic identifiers to ensure data integrity.

What is the best way to secure dynamic SQL identifiers against injection?

The best way to secure dynamic SQL identifiers is by enforcing strict whitelisting and controlled schemas. This prevents untrusted input from executing malicious commands during dynamic database operations.

How do I audit existing SQL queries to eliminate string concatenation?

To audit existing SQL queries and eliminate string concatenation, review all data access code and rewrite queries to use parameterized prepared statements, then run a security checklist to verify safety.

Why does validating transaction boundaries matter for database security?

Validating transaction boundaries matters for database security because it ensures reliable error handling and data integrity during multi-step operations, preventing partial updates that could corrupt the database.

Do I need prepared statements for all schema changes and data access code?

Yes, you need prepared statements for all schema changes and data access code to eliminate injection risk. Applying parameterized queries across the entire backend ensures comprehensive protection against malicious inputs.