Agent Skills by ALSEL
汎用セキュリティ⭐ リポ 4品質スコア 66/100

better-auth

Better Authを使用して、フレームワークに依存しないTypeScript認証フレームワークで認証と認可を実装できます。メール/パスワード認証と検証、OAuth プロバイダー(Google、GitHub、Discord など)、二段階認証(TOTP、SMS)、パスキー/WebAuthn対応、セッション管理、ロールベースアクセス制御(RBAC)、レート制限、データベースアダプターなど豊富な機能を備えています。アプリケーションへの認証機能追加、OAuthフローの実装、2FA/MFAの構築、ユーザーセッション管理、認可ルール設定、Webアプリケーションのセキュアな認証システム構築などの場面で活用できます。

description の原文を見る

Implement authentication and authorization with Better Auth - a framework-agnostic TypeScript authentication framework. Features include email/password authentication with verification, OAuth providers (Google, GitHub, Discord, etc.), two-factor authentication (TOTP, SMS), passkeys/WebAuthn support, session management, role-based access control (RBAC), rate limiting, and database adapters. Use when adding authentication to applications, implementing OAuth flows, setting up 2FA/MFA, managing user sessions, configuring authorization rules, or building secure authentication systems for web applications.

SKILL.md 本文

Better Auth スキル

Better Auth は TypeScript 向けの包括的なフレームワークに依存しない認証/認可フレームワークで、組み込みのメール/パスワード認証、ソーシャル OAuth、および高度な機能向けの強力なプラグインエコシステムを備えています。

使用する場面

  • TypeScript/JavaScript アプリケーションで認証を実装する
  • メール/パスワードまたはソーシャル OAuth 認証を追加する
  • 2FA、パスキー、マジックリンク、高度な認証機能をセットアップする
  • 組織サポート機能を備えたマルチテナントアプリを構築する
  • セッションとユーザーライフサイクルを管理する
  • あらゆるフレームワーク(Next.js、Nuxt、SvelteKit、Remix、Astro、Hono、Express など)で利用する

クイックスタート

インストール

npm install better-auth
# または pnpm/yarn/bun add better-auth

環境セットアップ

.env を作成します:

BETTER_AUTH_SECRET=<generated-secret-32-chars-min>
BETTER_AUTH_URL=http://localhost:3000

基本的なサーバーセットアップ

auth.ts を作成します(ルート、lib/、utils/、または src/app/server/ 配下):

import { betterAuth } from "better-auth";

export const auth = betterAuth({
  database: {
    // See references/database-integration.md
  },
  emailAndPassword: {
    enabled: true,
    autoSignIn: true
  },
  socialProviders: {
    github: {
      clientId: process.env.GITHUB_CLIENT_ID!,
      clientSecret: process.env.GITHUB_CLIENT_SECRET!,
    }
  }
});

データベーススキーマ

npx @better-auth/cli generate  # スキーマ/マイグレーションを生成
npx @better-auth/cli migrate   # マイグレーションを適用(Kysely のみ)

API ハンドラーをマウント

Next.js App Router:

// app/api/auth/[...all]/route.ts
import { auth } from "@/lib/auth";
import { toNextJsHandler } from "better-auth/next-js";

export const { POST, GET } = toNextJsHandler(auth);

その他のフレームワーク: references/email-password-auth.md#framework-setup を参照

クライアントセットアップ

auth-client.ts を作成します:

import { createAuthClient } from "better-auth/client";

export const authClient = createAuthClient({
  baseURL: process.env.NEXT_PUBLIC_BETTER_AUTH_URL || "http://localhost:3000"
});

基本的な使用方法

// サインアップ
await authClient.signUp.email({
  email: "user@example.com",
  password: "secure123",
  name: "John Doe"
});

// サインイン
await authClient.signIn.email({
  email: "user@example.com",
  password: "secure123"
});

// OAuth
await authClient.signIn.social({ provider: "github" });

// セッション
const { data: session } = authClient.useSession(); // React/Vue/Svelte
const { data: session } = await authClient.getSession(); // Vanilla JS

機能選択マトリックス

機能プラグイン必須ユースケースリファレンス
メール/パスワードいいえ(組み込み)基本認証email-password-auth.md
OAuth(GitHub、Google など)いいえ(組み込み)ソーシャルログインoauth-providers.md
メール検証いいえ(組み込み)メールアドレスの検証email-password-auth.md
パスワードリセットいいえ(組み込み)パスワード忘却フローemail-password-auth.md
2 要素認証(2FA/TOTP)はい(twoFactor)セキュリティ強化advanced-features.md
パスキー/WebAuthnはい(passkey)パスワードレス認証advanced-features.md
マジックリンクはい(magicLink)メールベースのログインadvanced-features.md
ユーザー名認証はい(username)ユーザー名ログインemail-password-auth.md
組織/マルチテナントはい(organization)チーム/組織機能advanced-features.md
レート制限いいえ(組み込み)不正使用を防止advanced-features.md
セッション管理いいえ(組み込み)ユーザーセッションadvanced-features.md

認証方法選択ガイド

メール/パスワードを選択する場合:

  • 従来の認証を備えた標準的なウェブアプリを構築する
  • ユーザー認証情報を完全に制御する必要がある
  • メールベースのアカウントを優先するユーザーをターゲットにする

OAuth を選択する場合:

  • 摩擦の少ないクイックサインアップを望む
  • ユーザーがすでにソーシャルアカウントを持っている
  • ソーシャルプロフィールデータへのアクセスが必要

パスキーを選択する場合:

  • パスワードレス体験を望む
  • 最新ブラウザ/デバイスをターゲットにする
  • セキュリティが最優先事項

マジックリンクを選択する場合:

  • WebAuthn の複雑さなしでパスワードレスを望む
  • メールファーストのユーザーをターゲットにする
  • 一時的なアクセスリンクが必要

複数の方法を組み合わせる場合:

  • さまざまなユーザー設定に対応する柔軟性を望む
  • さまざまな認証要件を備えたエンタープライズアプリを構築する
  • プログレッシブなエンハンスメント(シンプルな状態から始めて、さらにオプションを追加)が必要

コアアーキテクチャ

Better Auth はクライアント-サーバーアーキテクチャを使用します:

  1. サーバー (better-auth): 認証ロジック、データベース操作、API ルートを処理
  2. クライアント (better-auth/client): フロントエンド向けのフック/メソッドを提供
  3. プラグイン: サーバー/クライアント機能を拡張

実装チェックリスト

  • better-auth パッケージをインストール
  • 環境変数を設定(SECRET、URL)
  • データベース設定を使用して認証サーバーインスタンスを作成
  • スキーママイグレーションを実行(npx @better-auth/cli generate)
  • フレームワークに API ハンドラーをマウント
  • クライアントインスタンスを作成
  • サインアップ/サインイン UI を実装
  • コンポーネントにセッション管理を追加
  • 保護されたルート/ミドルウェアをセットアップ
  • 必要に応じてプラグインを追加(その後スキーマを再生成)
  • 完全な認証フローをテスト
  • メール送信を設定(検証/リセット)
  • 本番環境用のレート制限を有効化
  • エラーハンドリングをセットアップ

リファレンスドキュメント

コア認証

  • メール/パスワード認証 - メール/パスワード設定、検証、パスワードリセット、ユーザー名認証
  • OAuth プロバイダー - ソーシャルログインセットアップ、プロバイダー設定、トークン管理
  • データベース統合 - データベースアダプター、スキーマセットアップ、マイグレーション

高度な機能

  • 高度な機能 - 2FA/MFA、パスキー、マジックリンク、組織、レート制限、セッション管理

スクリプト

  • scripts/better_auth_init.py - インタラクティブセットアップで Better Auth 設定を初期化

リソース

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
nordeim
リポジトリ
nordeim/Prompt-Engineering
ライセンス
MIT
最終更新
2026/4/14

Source: https://github.com/nordeim/Prompt-Engineering / ライセンス: MIT

関連スキル

Anthropic Claudeセキュリティ⭐ リポ 8,981

secure-code-guardian

認証・認可の実装、ユーザー入力の保護、OWASP Top 10の脆弱性対策が必要な場合に使用します。bcrypt/argon2によるパスワードハッシング、パラメータ化ステートメントによるSQLインジェクション対策、CORS/CSPヘッダーの設定、Zodによる入力検証、JWTトークンの構築などのカスタムセキュリティ実装に対応します。認証、認可、入力検証、暗号化、OWASP Top 10対策、セッション管理、セキュリティ強化全般で活用できます。ただし、構築済みのOAuth/SSO統合や単独のセキュリティ監査が必要な場合は、より特化したスキルの検討をお勧めします。

by Jeffallan
汎用セキュリティ⭐ リポ 1,982

claude-authenticity

APIエンドポイントが本物のClaudeによって支えられているか(ラッパーやプロキシ、偽装ではないか)を、claude-verifyプロジェクトを模した9つの重み付きルールベースチェックで検証できます。また、Claudeの正体を上書きしているプロバイダーから注入されたシステムプロンプトも抽出します。完全に自己完結しており、httpx以外の追加パッケージは不要です。Claude APIキーまたはエンドポイントを検証したい場合、サードパーティのClaudeサービスが本物か確認したい場合、APIプロバイダーのClaude正当性を監査したい場合、複数モデルを並行してテストしたい場合、またはプロバイダーが注入したシステムプロンプトを特定したい場合に使用できます。

by LeoYeAI
Anthropic Claudeセキュリティ⭐ リポ 2,159

anth-security-basics

Anthropic Claude APIのセキュリティベストプラクティスを適用し、キー管理、入力値の検証、プロンプトインジェクション対策を実施します。APIキーの保護、Claudeに送信する前のユーザー入力検証、コンテンツセーフティガードレールの実装が必要な場合に活用できます。「anthropic security」「claude api key security」「secure anthropic」「prompt injection defense」といったフレーズでトリガーされます。

by jeremylongshore
汎用セキュリティ⭐ リポ 699

x-ray

x-ray.mdプレ監査レポートを生成します。概要、強化された脅威モデル(プロトコルタイプのプロファイリング、Gitの重み付け攻撃面分析、時間軸リスク分析、コンポーザビリティ依存関係マッピング)、不変条件、統合、ドキュメント品質、テスト分析、開発者・Gitの履歴をカバーしています。「x-ray」「audit readiness」「readiness report」「pre-audit report」「prep this protocol」「protocol prep」「summarize this protocol」のキーワードで実行されます。

by pashov
汎用セキュリティ⭐ リポ 677

semgrep

Semgrepスタティック分析スキャンを実行し、カスタム検出ルールを作成します。Semgrepでのコードスキャン、セキュリティ脆弱性の検出、カスタムYAMLルールの作成、または特定のバグパターンの検出が必要な場合に使用します。重要:ユーザーが「バグをスキャンしたい」「コード品質を確認したい」「脆弱性を見つけたい」「スタティック分析」「セキュリティlint」「コード監査」または「コーディング標準を適用したい」と尋ねた場合も、Semgrepという名称を明記していなくても、このスキルを使用してください。Semgrepは30以上の言語に対応したパターンベースのコードスキャンに最適なツールです。

by wimpysworld
汎用セキュリティ⭐ リポ 591

ghost-bits-cast-attack

Java「ゴーストビッツ」/キャストアタック プレイブック(Black Hat Asia 2026)。16ビット文字が8ビットバイトに暗黙的に縮小されるJavaサービスへの攻撃時に使用します。WAF/IDSを回避して、SQLインジェクション、デシリアライゼーション型RCE、ファイルアップロード(Webシェル)、パストトラバーサル、CRLF インジェクション、リクエストスマグリング、SMTPインジェクションを実行できます。Tomcat、Spring、Jetty、Undertow、Vert.x、Jackson、Fastjson、Apache Commons BCEL、Apache HttpClient、Angus Mail、JDK HttpServer、Lettuce、Jodd、XMLWriterに影響し、WAFバイパスにより多くの「パッチ済み」CVEを再度有効化します。

by yaklang
本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: nordeim · nordeim/Prompt-Engineering · ライセンス: MIT