Autenticación y Autorización

Angel Soto

 

dreamensys@gmail.com

@dreamensys

Full Stack Developer

  • Autenticación vs Autorización
  • Métodos de autenticación
  • Seguridad en .NET Core
  • Políticas para contraseñas

Métodos de autenticación

  • Basic Authentication (username, password and SSL/TLS)

  • Bearer or Token based Authentication(JWT)

  • OpenID

  • OAuth

  • API keys

Basic Authentication

Bearer o Token

OpenID

OAuth 2.0

API Key

Autenticación

  • Directorio Activo
  • Office365
  • Single Sign On

Autorización

  • Roles
  • Políticas
  • Claims

.NET Core

  • Altamente acoplado a SQL Server
  • Configuraciones complejas con otros motores
  • Roles y contraseñas requeridas
  • Campos customizados dificiles de manejar

ASP.NET Membership(2005)

  • Soporte a esquema de BD customizados
  • Extensiones para OAuth y OpenID
  • Existe aún alto acoplamiento a SQL Server
  • Dificil para pruebas unitarias

Simple Membership(2012)

  • UserManager & SignInManager
  • Soporte completo a OAuth y OpenID
  • Soporte diferentes motores de BD, incluso los NoSQL
  • Roles, Claims
  • Cuentas empresariales (Active Directory, Azure AD, Office 365)
  • Fácil control en hashing de contraseñas
  • Single Sign On
  • Creación de "secrets" en archivos de configuración

ASP.NET Identity (2017)

  • Funcionalidad "Remember me"
  • Bloqueo de cuentas
  • Roles
  • Confirmación de cuentas(Email)

Además de...

  • Lista negra de contraseñas
  • Nivel intermedio en complejidad de las politicas de definición de contraseñas
  • Bloquear al usuario con multiples intentos fallidos.(Ataque de fuerza bruta)
  • Two-factor authentication
  • Geolocalicación del usuario

Políticas de seguridad

Authentication & Authorization in ASP.NET Core

By Angel Soto

Authentication & Authorization in ASP.NET Core

Authentication & Authorization

  • 151