本文へ移動
cccskills
無料GitHub で公開

jwt-strategy

JWT strategy: RS256/EdDSA, JWKS rotation, refresh tokens, secure storage, revocation, multi-tenant.

日本語の概要は準備中です。原文の説明を表示しています。

SebastianLuser/claude-code-arcaneスター 3(GitHub 3 + cccskills 0)
連携ツールRedis

実行スコア 未検証

インストール方法を見る

含まれるファイル(4)

  • SKILL.md2.9 KB
  • references/anti-patterns.md1.2 KB
  • references/checklist.md663 B
  • references/implementation.md1.0 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

JWT Strategy — Educabot

Default: Web SPA → session cookie httpOnly opaca + refresh rotation. Mobile/APIs externas → JWT corto (RS256) + refresh rotado.

Algoritmos

RS256 o EdDSA (Ed25519) — asimétricos. Private key firma, public key verifica via JWKS. Prohibido: HS256 en multi-service (shared secret), alg: none.

Claims

Estándar obligatorios: iss, sub (user ID), aud, exp, iat, nbf, jti (para revocación). Custom Educabot: tenant_id, roles, scope, user_version. Menores: NUNCA email/nombre/PII — solo sub (UUID) + tenant_id.

Lifetimes

Access: 5-15 min. Refresh: 7-30 días, rotado en cada uso, en cookie httpOnly + DB.

Refresh Token Rotation

Cada POST /auth/refresh: validar → marcar como rotated_at → emitir nuevo con misma family_id + parent_jti. Refresh ya rotado llega → reuse detectado → revocar toda la family.

JWKS

/.well-known/jwks.json con claves públicas activas. Cache respetando Cache-Control (~10 min). Rotar cada 90 días: 2 kids activos durante overlap (emitir con nueva, validar con ambas). kid en JWT header.

Validación Server-side

  1. Signature contra JWKS (kid correcto)
  2. exp no vencido, nbf ya pasado
  3. iss matchea, aud incluye servicio actual
  4. jti no en blacklist (Redis)
  5. user_version matchea DB (si se usa)

Implementación

Go (golang-jwt), TS (jose), React (in-memory + cookie), React Native (expo-secure-store).

→ Read references/implementation.md for detalles por stack: Go, TS, React, React Native y CSRF

Logout

POST /auth/logout → delete refresh en DB → clear cookie (Max-Age=0) → frontend borra access in-memory. Access sigue válido hasta exp. Kill switch inmediato: jti a blacklist Redis con TTL = exp - now.

Revocación

A) Blacklist jti: Redis SET revoked:<jti> 1 EX <ttl>. +1 Redis hit/request.

B) user_version (Default Educabot): user tiene version en DB (incrementa en logout-all/password change/role change). JWT incluye user_version. Middleware compara (cacheable). Más barato a escala.

Multi-tenant

tenant_id en claims obligatorio. Backend valida que recursos pertenezcan a tenant_id del JWT. Prohibido pasar tenant_id por query/body.

Anti-patterns

→ Read references/anti-patterns.md for tabla completa (12 items) con remediación

Checklist

→ Read references/checklist.md for checklist completo (11 items)

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

コメント

ログインなしで書き込めます。使ってみた感想、質問、動かなかった環境などを気軽にどうぞ。

まだコメントはありません。最初のコメントを書いてみませんか。

送信するとすぐに公開されます。メールアドレスや電話番号などの個人情報は書かないでください。URL は 2 つまでです。

0 / 1000 文字

このフォームは reCAPTCHA で保護されており、Google のプライバシーポリシーと利用規約が適用されます。

同じリポジトリのスキル

Plan, design, and implement A/B tests and experiments with statistical rigor. Covers hypothesis frameworks, sample sizing, metrics, and result analysis.

日本語の概要は準備中です。原文の説明を表示しています。

SebastianLuser/claude-code-arcane32026年10月27日 更新

Web/mobile accessibility decision guide: WCAG 2.2 AA, ARIA, keyboard nav, focus management, contrast, testing. Use for: a11y, accessibility, wcag, aria, screen reader, keyboard, contrast.

日本語の概要は準備中です。原文の説明を表示しています。

SebastianLuser/claude-code-arcane32026年10月27日 更新

Generate, iterate, and scale ad creative for paid advertising across Google, Meta, LinkedIn, and X. Covers platform specs, creative frameworks, and quality validation.

日本語の概要は準備中です。原文の説明を表示しています。

SebastianLuser/claude-code-arcane32026年10月27日 更新

Musica interactiva para juegos: layering vertical, re-secuenciacion horizontal, stingers, reglas de transicion con sync points, y mapeo de estados de gameplay a musica. Usar para: musica adaptativa, sistema de musica dinamica, transiciones musicales, combat music.

日本語の概要は準備中です。原文の説明を表示しています。

SebastianLuser/claude-code-arcane32026年10月27日 更新

Design multi-agent systems, create agent architectures, define communication patterns, and build autonomous agent workflows with structured evaluation frameworks.

日本語の概要は準備中です。原文の説明を表示しています。

SebastianLuser/claude-code-arcane32026年10月27日 更新

Inter-agent communication protocol for C-suite agent teams. Defines invocation syntax, loop prevention, isolation rules, response formats, and quality loops.

日本語の概要は準備中です。原文の説明を表示しています。

SebastianLuser/claude-code-arcane32026年10月27日 更新

SebastianLuser のスキルをすべて見る

このスキルの問題を報告する