descope-auth について
descope-authは、Descopeのパスワードレス認証をフロントエンドやバックエンドに組み込むスキルです。フレームワーク別の手順を示し、安全なセッション検証を重視します。
主な機能
- 01フレームワーク別の設定手順
- 02Descope Flowの選択
- 03OTP、マジックリンク、パスキー
- 04OAuthとSSOの選択肢
- 05安全なセッション検証の案内
活用シーン
- 01Next.jsアプリへのパスワードレスログイン追加
- 02ReactやAngularへの認証組み込み
- 03バックエンドでのセッション検証
- 04利用可能なDescope Flowの選択
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ descope/ skills --skill descope-authインストール後、Claude Code で/descope-authを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/angular.mdbackend.mdnextjs.mdreact.mdvanilla-js.md詳細
Descope 認証
Descope Flows と SDK を使用して、安全なパスワードレス認証を統合します。
フレームワークの検出
ユーザーのフレームワークを検出し、適切なリファレンスを使用します。
| プロジェクトに含まれるもの... | 使用するリファレンス |
|---|---|
next が package.json に含まれる | references/nextjs.md |
react(Next.js なし) | references/react.md |
@angular/core が package.json に含まれる | references/angular.md |
| フロントエンドフレームワークなし(プレーンな HTML/JS) | references/vanilla-js.md |
| Python/Node.js のバックエンドのみ | references/backend.md |
クイックスタート(すべてのフレームワーク)
- https://app.descope.com/settings/project から Project ID を取得します
- 環境変数を設定します:
NEXT_PUBLIC_DESCOPE_PROJECT_ID=<your-id> - フレームワーク固有のリファレンスに従います
- 確認:セットアップ後、
<Descope>コンポーネントにログインフォームが表示されることを確認します。ブラウザーのコンソールを確認してください。Project ID がない、または無効な場合は、明確なCould not load flowsエラーが表示されます。
最小限のインライン例(Next.js)
// src/app/login/page.tsx
import { Descope } from '@descope/nextjs-sdk';
export default function LoginPage() {
return (
<Descope
flowId="sign-up-or-in"
onSuccess={(e) => console.log('Authenticated:', e.detail.user)}
onError={(e) => console.error('Auth failed:', e.detail)}
/>
);
}
React SPA またはバックエンドのみのセットアップについては、以下のフレームワーク固有のリファレンスを参照してください。
有効な Flow ID(重要:他の ID を作成しないでください)
| Flow ID | 用途 |
|---|---|
sign-up-or-in | サインアップ/ログインをまとめて実行(推奨) |
sign-up | 登録のみ |
sign-in | ログインのみ |
step-up | MFA ステップアップ認証 |
update-user | プロフィールの更新、認証方法の追加 |
認証方法
| 方法 | 使用する場面 |
|---|---|
| OTP(メール/SMS) | 迅速な確認コード |
| Magic Link | パスワードレスのメールリンク |
| Passkeys | 生体認証/WebAuthn(最も安全) |
| OAuth | ソーシャルログイン(Google、GitHub など) |
| SSO | エンタープライズ向け SAML/OIDC |
| パスワード | 従来型の認証(非推奨) |
禁止事項(セキュリティ上のガードレール)
- JWT を手動で解析しないでください。必ず SDK の
validateSession()を使用してください - トークンを localStorage に保存しないでください。SDK が安全に処理します
- Flow ID を作成しないでください。上の表に記載された ID のみを使用してください
- サーバーサイドの検証を省略しないでください。必ずバックエンドで検証してください
- クライアントコードで DESCOPE_MANAGEMENT_KEY を公開しないでください
リファレンス
references/nextjs.md- Next.js App Router と Pages Router の統合references/react.md- React SPA の統合references/angular.md- Angular の統合references/vanilla-js.md- Vanilla JavaScript/プレーンな HTML の統合references/backend.md- バックエンドでのセッション検証
コメント
Markdown 対応