¿Cuál es la diferencia en el contexto de las aplicaciones web? Veo mucho la abreviatura "auth". Qué representa auth -entication o autenticación -orization? ¿O son ambos?
authn
para autenticación y authz
autorización
¿Cuál es la diferencia en el contexto de las aplicaciones web? Veo mucho la abreviatura "auth". Qué representa auth -entication o autenticación -orization? ¿O son ambos?
authn
para autenticación y authz
autorización
Respuestas:
La autenticación es el proceso de determinar que alguien realmente es quien dice ser.
La autorización se refiere a reglas que determinan quién puede hacer qué. Por ejemplo, Adam puede estar autorizado para crear y eliminar bases de datos, mientras que Usama solo está autorizado para leer.
Los dos conceptos son completamente ortogonales e independientes, pero ambos son fundamentales para el diseño de seguridad, y el hecho de que ninguno de los dos sea correcto abre el camino al compromiso.
En términos de aplicaciones web, en términos muy crudos, la autenticación es cuando verifica las credenciales de inicio de sesión para ver si reconoce a un usuario como conectado, y la autorización es cuando busca en su control de acceso si permite que el usuario vea, edite o elimine o crear contenido.
En resumen, por favor. :-)
Autenticación = inicio de sesión + contraseña (quién eres)
Autorización = permisos (lo que tiene permitido hacer)
La "autenticación" corta es más probable que se refiera a la primera o a ambas.
Como dice Autenticación vs Autorización :
La autenticación es el mecanismo por el cual los sistemas pueden identificar de forma segura a sus usuarios. Los sistemas de autenticación proporcionan respuestas a las preguntas:
- Quien es el usuario?
- ¿Es realmente el usuario quien se representa a sí mismo?
Por el contrario, la autorización es el mecanismo por el cual un sistema determina qué nivel de acceso debe tener un usuario autenticado en particular para asegurar los recursos controlados por el sistema. Por ejemplo, un sistema de gestión de bases 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, mientras que les da a otras personas la capacidad de cambiar datos. Los sistemas de autorización proporcionan respuestas a las preguntas:
- ¿El usuario X está autorizado para acceder al recurso R?
- ¿El usuario X está autorizado para realizar la operación P?
- ¿El usuario X está autorizado para realizar la operación P en el recurso R?
Prefiero la verificación y los permisos a la autenticación y autorización.
Es más fácil en mi cabeza y en mi código pensar en "verificación" y "permisos" porque las dos palabras
La autenticación es verificación y la autorización es verificar los permisos. Auth puede significar cualquiera de los dos, pero se usa con más frecuencia como "Autenticación de usuario", es decir, "Autenticación de usuario"
La confusión es comprensible, ya que las dos palabras suenan similares, y dado que los conceptos a menudo están estrechamente relacionados y se usan juntos. Además, como se mencionó, la abreviatura comúnmente utilizada Auth no ayuda.
Otros ya han descrito bien lo que significan autenticación y autorización. Aquí hay una regla simple para ayudar a mantener a los dos claramente separados:
- Auth enti cación valida su Id enti dad (o autenticidad , si prefiere que)
- Autor ización valida su autor dad, es decir, los derechos de acceso y posiblemente cambiar algo.
He tratado de crear una imagen para explicar esto en las palabras más simples.
1) Autenticación significa "¿Eres quien dices que eres?"
2) Autorización significa "¿Debería poder hacer lo que está tratando de hacer?".
Esto también se describe en la imagen a continuación.
He tratado de explicarlo en los mejores términos posibles, y he creado una imagen de lo mismo.
La autenticación es el proceso de verificar la identidad proclamada.
Generalmente seguido de una autorización , que es la aprobación de que puede hacer esto y aquello.
Agregando a la respuesta de @ Kerrek;
La autenticación es un formulario generalizado (todos los empleados pueden iniciar sesión en la máquina)
La autorización es una forma especializada (pero el administrador solo puede instalar / desinstalar la aplicación en la máquina)
La autenticación es el proceso de verificar su nombre de usuario y contraseña de inicio de sesión.
La autorización es el proceso de verificar que puedes acceder a algo.
Autenticación : ¿es usted la persona que dice ser?
Autorización : ¿está autorizado a hacer lo que sea que intente hacer?
Una aplicación web usa Google Sign-In . Después de que un usuario inicia sesión con éxito, Google devuelve:
Adicionalmente:
La empresa puede tener un panel de administración que permite a la atención al cliente administrar a los usuarios de la empresa. En lugar de proporcionar una solución de registro personalizada que permita que el servicio de atención al cliente acceda a este panel, la empresa utiliza Google Sign-In.
¿El token JWT (recibido del proceso de inicio de sesión de Google) se envía al servidor de autorización de la compañía para determinar si el usuario tiene una cuenta de G Suite con el dominio alojado de la organización (email@company.com)? Y si lo hacen, ¿son miembros del Grupo de Google de la compañía que se creó para atención al cliente? En caso afirmativo de todo lo anterior, podemos considerarlos autenticados .
El servidor de autorización de la compañía luego envía a la aplicación del tablero un token de acceso. Este token de acceso se puede utilizar para realizar solicitudes autorizadas al servidor de recursos de la empresa (por ejemplo, la capacidad de realizar una solicitud GET a un punto final que devuelve a todos los usuarios de la empresa).
Authentication
es un proceso de verificación:
digital signature
Authorization
Es el siguiente paso después Authentication
. Se trata de permisos / roles / privilegios a los recursos. OAuth (Autorización abierta) es un ejemplo de autorización