Desarrollo de software con GitHub Copilot
Thalia Barrera
AI Engineering Curriculum Manager, DataCamp

def get_user(username):
query = f"SELECT * FROM users \
WHERE username = '{username}'"
return db.execute(query)
Un atacante puede inyectar SQL:
users[screencast]
[screencast]
Revisión dirigida
Revisa
#selectionpor vulnerabilidades de inyección SQL y XSS
Escaneo de todo el código
Escaneo
@workspacepara credenciales o claves de API hardcodeadas
[screencast]

Generación defensiva de código
Añade validación de entrada a este endpoint. Rechaza tipos inesperados y aplica límites de longitud.
No solo detectes vulnerabilidades: evítalas
.github/copilot-instructions.md
## Security standards
- Use parameterized queries
- Never hardcode credentials or API keys
- Validate and sanitize all user input
- Use bcrypt or argon2 for password hashing
.github/instructions/security.instructions.md
applyTo: "**/*.py"
- Use secrets module instead of random for tokens
- Escape all user input in Jinja2 templates
✅ La seguridad pasa a ser parte de cómo escribes código
Desarrollo de software con GitHub Copilot