Autenticación vs autorización

A menudo vemos estos dos conceptos como sinónimos y los usamos de forma indistinta, lo cual no está mal, sin embargo, me encontré con un artículo que señala una diferencia que me pareció buena.

Autenticación

Es el proceso de verificar la identidad.

Esta identidad puedes ser una cuenta de usuario utilizada por una persona, un ID de host utilizado por una máquina, un certificado de servidor utilizado por un componente de software de servidor o un certificado de cliente utilizado por un componente de software de cliente.

La autenticación es usualmente realizada para probar que el portador de la identidad tiene la llave que sólo él debe conocer.

Mediante la autenticación se certifica que el usuario es quien dice ser.

Autorización

Después de que se autentica una identidad, la autorización es el proceso de determinar que tiene permitido hacer.

La autorización se logra asignando permisos o roles a una identidad que accede a los objetos del sistema.

La autorización consiste en dar acceso a una serie de recursos a un usuario o sistema.

Consideraciones

Es bueno tener claro que autenticación y autorización son procesos que ocurren en distintos momentos, durante el uso de la aplicación. Como desarrolladores debemos tener claro que todo usuario deberá llegar al punto en que deba ser validado, tanto en su identidad, como en sus permisos.

En esta otra entrada, Usuarios, roles y permisos, se mencionan otros conceptos involucrados y que son fundamentales para un buen desarrollo de un sistema.

Referencias externas

Deja un comentario