Seguretat
Parlarem de la seguretat lògica (software) i activa (preventiva) associats al desenvolupament de programari.
Un sistema es pot considerar segur si ens cuidem dels següents aspectes, de més a menys significatius:
- Disponibilitat: els usuaris poden accedir a la informació quan ho necessiten.
- Confidencialitat: la informació és accessible només per aquells autoritzats a tenir accés.
- Integritat: mantenir les dades lliures de modificacions no autoritzades.
- Autenticació: verificació de la identitat.
- No repudi: ni l'emissor ni el receptor poden negar ser part en la comunicació que es produeix.
Dins de la programació, i en referència a la seguretat, parlarem dels següents aspectes:
- Control d'accés: registre, autenticació i autorització d'usuaris.
- Disseny segur de programari per evitar vulnerabilitats.
Referències
Seguretat:
- Security Features in Java SE (The Java Tutorials)
- Secure Coding Guidelines for Java SE
- Security by design (Wikipedia)
- Application Security (Wikipedia)
- SEI CERT Oracle Coding Standard for Java
- Top 10 Secure Coding Practices
- Secure Programming for Linux and Unix (Java specific)
- How to Learn Penetration Testing: A Beginners Tutorial
- OWASP Proactive Controls
- OWASP API Security Project
- Role-based access control (Wikipedia)
- Please, stop using local storage
- HTTP headers for the responsible developer
- How to Use Local Storage with JavaScript
- Advanced API Security (Llibre)
- How secure is Java compared to other languages?
- The Rule Of 2
- Programming With Assertions
Autenticació / autorització:
- HTTP Authentication
- Session vs Token Based Authentication
- The Web Authentication Guide Cheatsheet
- JWT, JWS and JWE for not so dummies!
- Java Authentication with JSON Web Tokens (jjwt)
- Tutorial: Create and Verify JWTs in Java
- Refresh Tokens: When to Use Them and How They Interact with JWTs
- Attacking JWT authentication
- Token based authentication made easy
- Getting Token Authentication Right in a Stateless Single Page Application
- Stateless Sessions for Stateful Minds: JWTs Explained and How You Can Make The Switch
- Web Security for SPAs
- Webauthn guide
- An Introduction to OAuth 2
- OAuth 2.0 clients in Java programming, Part 1, Part 2 i Part 3
- LDAP Security
- REST Security Cheat Sheet (OWASP)
- Password Storage Cheat Sheet (OWASP)
- Cryptographic Storage Cheat Sheet (OWASP)
- REST API Security Essentials