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

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

Ответ

Идентификация — процесс распознавания пользователя (например, по логину).
Аутентификация — проверка подлинности (например, ввод пароля или 2FA).
Авторизация — предоставление прав на доступ к ресурсам (например, доступ к админке).

Пример кода (Python, Flask):

@app.route('/login', methods=['POST'])
def login():
    username = request.form['username']  # Идентификация
    password = request.form['password']  
    if check_password(username, password):  # Аутентификация
        session['role'] = get_user_role(username)  # Авторизация
        return "Success"
    return "Denied"