Autenticación frente a autorización
El proceso de identificación segura de sus usuarios por un sistema se denomina autenticación. La autenticación trata de identificar la identidad del usuario y si el usuario es realmente la persona que representa. La determinación del nivel de acceso (a qué recursos puede acceder el usuario) de un usuario autenticado se realiza mediante autorización.
¿Qué es la autenticación?
La autenticación se utiliza para establecer la identidad de un usuario que intenta utilizar un sistema. El establecimiento de la identidad se realiza probando una pieza única de información que solo conocen el usuario autenticado y el sistema de autenticación. Esta información única podría ser una contraseña o una propiedad física que sea exclusiva del usuario, como una huella dactilar u otra biométrica, etc. Los sistemas de autenticación funcionan desafiando al usuario a proporcionar la información única, y si el sistema puede verificar que la información del usuario se considera autenticada. Los sistemas de autenticación pueden variar desde simples sistemas de desafío de contraseñas hasta sistemas complicados como Kerberos. Los métodos de autenticación local son los sistemas de autenticación más simples y comunes que se utilizan. En este tipo de sistema, los nombres de usuario y la contraseña de los usuarios autenticados se almacenan en el sistema del servidor local. Cuando un usuario quiere iniciar sesión, envía su nombre de usuario y contraseña en texto sin formato al servidor. Compara la información recibida con la base de datos y si coincide, el usuario será autenticado. Los sistemas de autenticación avanzados como Kerberos utilizan servidores de autenticación confiables para proporcionar servicios de autenticación.
¿Qué es la autorización?
El método que se utiliza para determinar los recursos que son accesibles para un usuario autenticado se llama autorización (autorización). Por ejemplo, en una base de datos, un conjunto de usuarios puede actualizar/modificar la base de datos, mientras que algunos usuarios solo pueden leer los datos. Entonces, cuando un usuario inicia sesión en la base de datos, el esquema de autorización determina si ese usuario debe tener la capacidad de modificar la base de datos o solo la capacidad de leer los datos. Entonces, en general, un esquema de autorización determina si un usuario autenticado debería poder realizar una operación particular en un recurso particular. Además, los esquemas de autorización pueden utilizar factores como la hora del día, la ubicación física, la cantidad de accesos al sistema, etc. al autorizar a los usuarios a acceder a algunos recursos del sistema.
¿Cuál es la diferencia entre autenticación y autorización?
La autenticación es el proceso de verificación de la identidad de un usuario que intenta obtener acceso a un sistema, mientras que la autorización es un método que se utiliza para determinar los recursos a los que puede acceder un usuario autenticado. Aunque la autenticación y la autorización realizan dos tareas diferentes, están estrechamente relacionadas. De hecho, en la mayoría de los sistemas cliente/servidor y basados en host, estos dos mecanismos se implementan utilizando los mismos sistemas de hardware/software. El esquema de autorización en realidad depende del esquema de autenticación para garantizar las identidades de los usuarios que ingresan al sistema y obtienen acceso a los recursos.