В чем разница между аутентификацией и авторизацией

«В чем разница между аутентификацией и авторизацией» — вопрос из категории Безопасность, который задают на 10% собеседований Frontend Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Аутентификация — это проверка личности пользователя (например, через логин/пароль, токен или биометрию).
Авторизация — это проверка прав доступа к ресурсу (например, может ли пользователь редактировать пост).

Пример:

// Аутентификация
const isAuthenticated = user.login === 'admin' && user.password === '123';

// Авторизация
const isAuthorized = user.role === 'admin' || user.id === post.authorId;

Аутентификация отвечает на вопрос "Кто ты?", авторизация — "Что тебе можно?".