На одну сторінку
Авторизація і безпека: шпаргалка
Те, що варто тримати під рукою. Якщо рядок незрозумілий, повернись у відповідний урок курсу.
Відкрити курс: Авторизація і безпекаСесії й паролі
| Що | Як |
|---|---|
| Cookie | HttpOnly; Secure; SameSite=Lax |
| Хеш пароля | await bcrypt.hash(password, 12) |
| Перевірка | await bcrypt.compare(input, hash) |
Токени й захист
| Що | Як |
|---|---|
| Видати JWT | jwt.sign({ sub: id }, SECRET, { expiresIn: "15m" }) |
| Заголовок | Authorization: Bearer <token> |
| CORS | cors({ origin: ["https://app.example"], credentials: true }) |
| SQL | db.query("… WHERE email = $1", [email]) |
Права й посилення
| Що | Як |
|---|---|
| Дозвіл | can(user, "posts:delete") |
| Випадковий токен | randomBytes(32).toString("base64url") |
| Вхід через Google | response_type=code&scope=openid email |
| Лише HTTPS | Strict-Transport-Security: max-age=31536000 |
| Джерела скриптів | Content-Security-Policy: default-src 'self' |