Виды авторизации

Существует несколько основных видов авторизации в веб-приложениях и API. Они различаются по способу подтверждения личности пользователя и механизму выдачи доступа.


1️⃣ Базовая авторизация (Basic Auth)

  • Принцип: логин и пароль отправляются в заголовке Authorization в виде base64.

  • Пример:

Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=
  • Особенности: простой способ, но небезопасен без HTTPS.


2️⃣ Формовая авторизация (Form-based Auth)

  • Принцип: пользователь вводит логин и пароль на веб-форме, сервер создаёт сессию.

  • Механизм: сервер выдаёт session ID через cookie, который отправляется при каждом запросе.

  • Применение: классические веб-сайты.


3️⃣ Токен-ориентированная авторизация (Token-based Auth)

  • Принцип: после логина сервер выдаёт токен (JWT, OAuth token).

  • Использование: клиент передаёт токен в заголовке Authorization: Bearer <token> при каждом запросе.

  • Особенности: удобно для SPA и мобильных приложений, stateless (сервер не хранит сессии).


4️⃣ OAuth 2.0 / OpenID Connect

  • OAuth 2.0 — протокол авторизации, позволяющий предоставлять доступ сторонним приложениям без передачи пароля.

  • OpenID Connect — расширение OAuth 2.0, добавляющее аутентификацию (подтверждение личности).

  • Механизм: access token + refresh token.


5️⃣ API Key авторизация

  • Принцип: клиент получает уникальный ключ (API key) и отправляет его с запросом (в заголовке, параметрах URL).

  • Применение: внешние API, сервисы без полноценной аутентификации пользователя.

  • Недостаток: ключ легко украсть, нужно использовать HTTPS.


6️⃣ Авторизация через SSO (Single Sign-On)

  • Принцип: единый логин для нескольких сервисов.

  • Механизм: сервер авторизации выдаёт токен для разных приложений внутри компании или экосистемы (например, Google SSO, SAML).


7️⃣ Двухфакторная авторизация (2FA / MFA)

  • Принцип: кроме пароля требуется дополнительный фактор (SMS, приложение-генератор кода, аппаратный ключ).

  • Задача: повысить безопасность доступа.

Last updated

Was this helpful?