Sobes.tech
Back to questions
Junior — Middle
63

Какими методами аутентификации ты знаком?

Companies where asked
ООО КМВ Тур

Answer from AI

sobes.tech AI

Я знаком с несколькими методами аутентификации:

  • Basic Authentication — передача логина и пароля в заголовках HTTP (обычно через Base64). Простая, но не очень безопасная без HTTPS.
  • Token-based Authentication — использование токенов (например, JWT), которые клиент передает серверу для подтверждения личности.
  • OAuth 2.0 — протокол авторизации, часто используется для доступа к API через сторонние сервисы.
  • Session-based Authentication — сервер создает сессию после входа пользователя, а клиент хранит идентификатор сессии в куках.

Например, в Python с Flask можно реализовать JWT аутентификацию с помощью библиотеки PyJWT:

from flask import Flask, request, jsonify
import jwt

app = Flask(__name__)
SECRET_KEY = 'secret'

@app.route('/login', methods=['POST'])
def login():
    username = request.json.get('username')
    password = request.json.get('password')
    # Проверка пользователя
    if username == 'user' and password == 'pass':
        token = jwt.encode({'user': username}, SECRET_KEY, algorithm='HS256')
        return jsonify({'token': token})
    return jsonify({'message': 'Invalid credentials'}), 401

Это лишь часть методов, выбор зависит от требований безопасности и архитектуры приложения.