Durante la última semana y media he estado recopilando, probando y jugando con diferentes extensiones, tareas y configuraciones que me permitan usar Azure DevOps como herramienta para implementar una cultura DevSecOps en los proyectos más comunes a día de hoy….
Filtrando por categoría DevSecOps
Usar pre-commit git hook con GitGuardian para escanear secretos
Una de las prácticas comunes en una cultura DevSecOps es el escaneo de secretos en tus repositorios. Si el secreto ha sido detectado en este punto ya será inevitable el tener que arreglar el commit, con herramientas como git filter-repo…
Llamar a APIs protegidas con Azure AD con Azure CLI
Esta semana he estado haciendo algunas pruebas con APIs protegidas con Azure AD y por agilidad he utilizado como cliente Azure CLI 😃, en lugar de crearme uno a medida. Esto me facilita la tarea ya que puedo despreocuparme de…
Integrar el flujo Authorization Code y PKCE para evitar ataques de interceptación del código
Actualizado el 23/12/2022 Si bien el flujo Authorization Code se considera el más seguro de todos, se ha demostrado que, en aplicaciones nativas, el código que otorga el servidor de autorización puede ser interceptado por aplicaciones maliciosas, haciéndose así con…
Ejemplo de Device Code Flow de OAuth 2.0
Actualizado el 23/12/2022 ¿Y si no tuviéramos un navegador en el dispositivo al que queremos dar permisos? Piensa en una televisión, una impresora, un asistente personal, un dispositivo IoT, etcétera. Por todo ello apareció un nuevo flujo en OAuth 2.0…
Ejemplo de Resource Owner Password Credentials (ROPC) Flow de OAuth 2.0
Actualizado el 23/12/2022 Ya hemos visto cómo usar OAuth 2.0 a través de los flujos Authorization Code, Implicit y Client Credentials. Todos ellos están enfocados a que las aplicaciones modernas tengan la mínima exposición de las credenciales de sus usuarios,…
Ejemplo de Client Credentials Flow de OAuth 2.0
Actualizado el 23/12/2022 Hay aplicaciones que no necesitan interactuar en nombre de los usuarios. Más bien, si se realiza cualquier tipo de acción, se hará en nombre de la propia aplicación. En el artículo de hoy vamos a ver el…
Actualizar access tokens cuando usas Implicit Flow
Actualizado el 22/12/2022 Los tokens que el servidor de autorización otorga, después de una autenticación correcta del usuario, tienen un tiempo de expiración. Sin embargo, si los usuarios tuvieran que estar continuamente autenticándose sería una pésima experiencia para ellos. Con…
Ejemplo de Implicit Flow de OAuth 2.0
Actualización del 26/12/2022: este flujo ya no es el recomendado, sino Authorization Code Flow con PKCE. Mira este artículo más reciente. Si tu aplicación no es capaz de guardar un secreto, porque esta se ejecuta completamente en el lado del cliente, Implicit…
Ejemplo de Authorization Code Flow de OAuth 2.0
Actualizado el 21/12/2022 Después de la explicación, viene el ejemplo 🤓 Ahora que ya sabes todos los flujos que existen a día de hoy, quiero ver contigo cada uno de ellos a través de un ejemplo.No he querido utilizar ninguna…
OAuth 2.0, OpenID Connect y JSON Web Tokens (JWT) ¿Qué es qué?
Este artículo va ser largo, pero también aclaratorio de algunos conceptos que en muchas ocasiones son incomprendidos por muchos y hace que la integración de las aplicaciones con proveedores de identidad se haga muy, pero que muy, cuesta arriba. Hoy…
Managed identities en Microsoft Azure: ¿Y si no hubiera credenciales que gestionar?
Uno de los retos con el que siempre nos enfrentamos es el de cómo gestionar las credenciales de otros servicios de Azure en nuestro código. Es una conversación recurrente en todos nuestros clientes: concienciar que es vital desacoplar todo tipo…