Autenticación se trata de probar la identidad de un solicitante. La "identidad" puede ser una propiedad o requisito específico, por ejemplo, "ser ciudadano de los EE. UU." o "tener más de 21 años" (para ver algunos ejemplos de la respuesta de @ David).
Autorización se trata de decidir qué debe permitirse hacer una identidad específica. Por ejemplo, una regla de autorización puede establecer que "quien tenga más de 21 años puede comprar cerveza".
En general, necesitará que ambos tengan acceso. En el ejemplo de la cerveza, el camarero debe asegurarse de que el cliente putativo realmente tenga más de 21 años, y también debe, en algún momento, obtener la información de que la cerveza se puede vender legalmente a los clientes que tienen más de 21 años. El orden en el que realiza ambas operaciones no es relevante, siempre y cuando se cumplan. De hecho, el ejemplo de venta de cerveza es un excelente ejemplo de autorización que se produce antes de la autenticación: el camarero aprende sobre la regla de autorización ("21+ - > OK") antes de que se encuentre con el cliente.
En muchos sistemas informáticos, preferimos realizar la autenticación primero, por los siguientes motivos:
-
Obtener las reglas de autorización para la solicitud en cuestión puede ser costoso. No queremos hacer eso para ningún solicitante aún no autenticado, ya que podría convertirse en una Denegación de Servicio.
-
Los administradores de sistemas generalmente están nerviosos por hacer que sus reglas de autorización sean conocidas en general. La recopilación de información de autorización antes de la autenticación puede filtrar dicha información a cualquiera.