# api-authentication

Скилл для ИИ-агента, который помогает писать аутентификацию в API: JWT, OAuth 2.0, API-ключи, сессии и защитные заголовки.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 533 установки · ★ 236
- Автор: secondsky
- Лицензия: MIT · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/secondsky/claude-skills/tree/HEAD/plugins/api-authentication/skills/api-authentication/SKILL.md
- Обновлён: 2026-10-20
- HTML: https://affpapa.org/nevibecode/skills/secondsky-api-authentication

## Что делает

Скилл добавляет агенту готовые шаблоны и правила для аутентификации в API. Внутри — таблица методов с областями применения, реализация JWT на Node.js с access- и refresh-токенами, middleware для проверки заголовка `Authorization`, набор требований безопасности и пример security-заголовков. Отдельный файл `references/python-flask.md` содержит вариант на Flask: JWT с ролевым доступом, интеграцию OAuth 2.0 через Authlib и аутентификацию по API-ключам с хешированием.

Скилл пригодится, когда агент пишет систему входа, подключает сторонний сервис или разбирается с ошибками в потоке аутентификации. Он же подскажет, как не наступить на типичные грабли: хранение паролей в открытом виде, слабые секреты JWT, игнорирование срока жизни токена, отключённый HTTPS в продакшене и логирование токенов.

Учтите: примеры на Node.js требуют пакет `jsonwebtoken`, а для Flask-варианта нужен Python с Authlib. Секреты скилл советует держать в переменных окружения — `JWT_SECRET` и `REFRESH_SECRET` в примере читаются именно оттуда, так что без них код не заработает.

## Установка

### Claude Code (родная платформа)

1. **Через Skills CLI (Vercel)**
```bash
npx skills add secondsky/claude-skills --skill api-authentication -a claude-code
```

2. **Вручную: положить файлы**
- Файл: `~/.claude/skills/api-authentication/SKILL.md` — Папка скилла целиком; для одного проекта — .claude/skills/api-authentication/

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add secondsky/claude-skills --skill api-authentication -a codex
```

2. **Вручную: положить файлы**
- Файл: `.agents/skills/api-authentication/SKILL.md` — Для всех проектов — ~/.agents/skills/

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add secondsky/claude-skills --skill api-authentication -a cursor
```

2. **Вручную: положить файлы**
- Файл: `.cursor/skills/api-authentication/SKILL.md` — Cursor читает и .agents/skills/, и .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install secondsky/claude-skills api-authentication
```

2. **Вручную: положить файлы**
- Файл: `.github/skills/api-authentication/SKILL.md`

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add secondsky/claude-skills --skill api-authentication -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/secondsky/claude-skills --path plugins/api-authentication/skills/api-authentication
```

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/skills/api-authentication/SKILL.md` — Старый путь .windsurf/skills/ тоже читается

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add secondsky/claude-skills --skill api-authentication -a opencode
```

### Claude.ai

**Claude.ai**
- Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/secondsky/claude-skills/tree/HEAD/plugins/api-authentication/skills/api-authentication/SKILL.md

## Когда брать
- сгенерировать пару access- и refresh-токенов для входа
- написать middleware, который проверяет заголовок `Authorization`
- подключить вход через Google по OAuth 2.0
- закрыть эндпоинты по ролям через декораторы
- выставить security-заголовки вроде `Strict-Transport-Security`

## Примеры запросов агенту
- Добавь в проект аутентификацию по JWT с access- и refresh-токенами
- Проверь мой middleware для заголовка `Authorization` на ошибки
- Настрой вход через Google по OAuth 2.0 на Flask

## Похожие
- [auth0-authentication](https://affpapa.org/nevibecode/skills/auth0-authentication.md) — скилл · 700 установок
- [catalyst-authentication](https://affpapa.org/nevibecode/skills/catalyst-authentication.md) — скилл · 999 установок
- [authentication-setup](https://affpapa.org/nevibecode/skills/authentication-setup.md) — скилл · 368 установок
- [testing-api-authentication-weaknesses](https://affpapa.org/nevibecode/skills/testing-api-authentication-weaknesses.md) — скилл · 484 установки
- [authentication](https://affpapa.org/nevibecode/skills/codewithmukesh-authentication.md) — скилл · 2800 установок
- [jwt-oauth-token-attacks](https://affpapa.org/nevibecode/skills/jwt-oauth-token-attacks.md) — скилл · 3800 установок

## Другие версии с тем же именем
- [api-authentication · aj-geddes](https://affpapa.org/nevibecode/skills/api-authentication.md) — 607 установок

Из того же набора: [secondsky/claude-skills](https://affpapa.org/nevibecode/by/secondsky/claude-skills.md) — 89 карточек

_Часть страницы не вошла по размеру — она есть в HTML-версии._

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
