Veo que estos dos términos se difunden bastante (específicamente en escenarios basados en la web, pero supongo que no se limita a eso) y me preguntaba si había o no una diferencia.
Me parece que ambos quieren decir que se le permite hacer lo que está haciendo. Entonces, ¿esto es solo una cuestión de nomenclatura o hay una diferencia básica en el significado?
Respuestas:
De hecho, existe una diferencia fundamental. La autenticación es el mecanismo mediante el cual los sistemas pueden identificar de forma segura a sus usuarios. Los sistemas de autenticación buscan dar respuestas a las preguntas:
La autorización, por el contrario, es el mecanismo por el cual un sistema determina qué nivel de acceso debe tener un usuario en particular (autenticado) a los recursos controlados por el sistema. Para un ejemplo que puede o no estar relacionado con un escenario basado en la web, un sistema de administración de base de datos podría diseñarse para proporcionar a ciertas personas específicas la capacidad de recuperar información de una base de datos, pero no la capacidad de cambiar los datos almacenados en la base de datos. base de datos, al tiempo que brinda a otras personas la capacidad de cambiar los datos. Los sistemas de autorización brindan respuestas a las preguntas:
Steve Riley ha escrito un ensayo bastante bueno sobre por qué deben permanecer distintos.
fuente
La autenticación se refiere a verificar la identidad de una entidad. La autorización se ocupa de lo que puede hacer una entidad autenticada (por ejemplo, permisos de archivo).
fuente
El punto principal es:
fuente
Autenticación:
La autenticación es el proceso de verificar la identidad de un usuario obteniendo algún tipo de credenciales y usando esas credenciales para verificar la identidad del usuario. Si las credenciales son válidas, se inicia el proceso de autorización. El proceso de autenticación siempre pasa al proceso de autorización.
Autorización:
La autorización es el proceso de permitir que los usuarios autenticados accedan a los recursos verificando si el usuario tiene derechos de acceso al sistema. La autorización le ayuda a controlar los derechos de acceso al otorgar o denegar permisos específicos a un usuario autenticado.
fuente
En mi experiencia, la autenticación generalmente se refiere al proceso más técnico, es decir, la autenticación de un usuario (verificando las credenciales de inicio de sesión / contraseña, certificados, etc.), mientras que la autorización se usa más en la lógica comercial de una aplicación.
Por ejemplo, en una aplicación, un usuario puede iniciar sesión y estar autenticado, pero no autorizado para realizar determinadas funciones.
fuente
Autenticar a un usuario en un sitio web significa verificar que este usuario es un usuario válido, es decir, verificar quién es el usuario mediante nombre de usuario / contraseña o certificados, etc. En términos comunes, ¿la persona está autorizada a ingresar al edificio?
La autorización es el proceso de verificar si el usuario tiene derechos / permiso para acceder a ciertos recursos o secciones de un sitio web, por ejemplo, si es un CMS, entonces el usuario está autorizado para cambiar el contenido del sitio web. En términos del escenario del edificio de oficinas, ¿se permite al usuario ingresar a la sala de redes de la oficina?
fuente
Si puedo iniciar sesión, mis credenciales se verifican y estoy AUTENTICADO. Si puedo realizar una tarea en particular, estoy AUTORIZADO para hacerlo.
fuente
La autenticación verifica quién es usted y la autorización verifica lo que está autorizado a hacer. Por ejemplo, se le permite iniciar sesión en su servidor Unix a través del cliente ssh, pero no está autorizado a navegador / data2 ni a ningún otro sistema de archivos. La autorización se produce después de una autenticación exitosa ........
fuente
La autenticación verifica quién es usted y la autorización verifica lo que está autorizado a hacer. Por ejemplo, se le permite iniciar sesión en su servidor Unix a través del cliente ssh, pero no está autorizado a navegador / data2 ni a ningún otro sistema de archivos. La autorización se produce después de una autenticación exitosa.
fuente
Autenticación: verificar quién es un usuario.
Para autenticarse, el usuario proporciona información de credenciales, como un nombre de usuario y contraseña, y si las credenciales son válidas, el usuario recibe un token que puede enviarse con solicitudes futuras como verificación de su autenticación.
Autorización: determinar qué puede hacer un usuario.
Desde la perspectiva del usuario, una autorización exitosa tiene lugar cuando ella puede enviar una solicitud para acceder a un sistema y hacer algo (como cargar un archivo en el sistema) y funciona.
La autenticación solo verifica la identidad: confirma que un usuario es quien dice ser. La autorización determina a qué recursos puede acceder un usuario verificado.
fuente
Autenticación
La autenticación verifica quién es usted. Por ejemplo, puede iniciar sesión en su servidor utilizando el cliente ssh o acceder a su servidor de correo electrónico utilizando el cliente POP3 y SMTP.
Autorización
La autorización verifica lo que está autorizado a hacer. Por ejemplo, se le permite iniciar sesión en su servidor a través del cliente ssh, pero no está autorizado a navegador / data2 ni a ningún otro sistema de archivos. La autorización se produce después de una autenticación exitosa.
fuente
La autorización es un proceso mediante el cual el servidor determina si el cliente tiene permiso para utilizar un archivo de acceso o recursos.
Un servidor utiliza la autenticación cuando el servidor necesita saber exactamente quién está accediendo a su información o sitio.
fuente
Ejemplo simple en tiempo real, si el estudiante viene a la escuela, el director está verificando Autenticación y Autorización. Autenticación: Verifique la tarjeta de identificación del estudiante, significa que pertenece a nuestra escuela o no. Autorización: Verifique que el estudiante tenga permiso para sentarse en el laboratorio de programación de computadoras o no.
fuente
He intentado crear una imagen para explicar esto en las palabras más simples.
1) Autenticación significa "¿Es usted quien dice ser?"
2) Autorización significa "¿Debería poder hacer lo que está tratando de hacer?".
Esto también se describe en la imagen siguiente.
fuente
Autenticación :
Es el proceso de validar si una identidad es verdadera o falsa. En otras palabras, verificar que un usuario es efectivamente el que dice ser.
Tipos de autenticación:
OpenID es un estándar abierto para la autenticación.
Autorización
La técnica que determina qué recursos son accesibles para un usuario con una determinada identidad o función.
OAuth es un estándar abierto para la autorización.
fuente
Autenticación : una aplicación necesita saber quién está accediendo a la aplicación. Entonces, la autenticación está relacionada con la palabra quién. La aplicación lo comprobará mediante un formulario de inicio de sesión. El usuario ingresará el nombre de usuario y la contraseña y estas entradas serán validadas por la aplicación. Una vez que la validación es exitosa, el usuario se declara autenticado.
La autorización consiste en comprobar si el usuario puede acceder a la aplicación o no o qué usuario puede acceder y qué usuario no puede acceder. Fuente: Autenticación Vs Autorización
fuente
En comparación con el resto de respuestas que intentan especificar explícitamente la definición o tecnología. Enviaré un ejemplo que puede ser más valioso.
Aquí hay un artículo que hace una gran analogía con un pasaporte versus un candado y llave
fuente