Webアプリにユーザー登録・ログイン・プロフィール管理を追加できる、Clerk公式のJavaScript SDK。
- スター
- 2,593
- フォーク
- 802
- 未解決の Issue
- 399
- 最終コミット
- 昨日
これは何?
Authは、Goで書かれたユーザー管理・認証サーバーです。ユーザー登録とサインインを処理し、JWTのアクセストークンとリフレッシュトークンを発行します。また、PostgRESTでのRow Level Securityなど、Supabaseの機能を支えるID基盤を提供します。メールアドレスとパスワード、マジックリンク、電話番号へのOTP送信、Google、Apple、GitHub、Discordなどの外部OAuthプロバイダーによるサインインに対応しています。
サーバーはGOTRUE_プレフィックスの環境変数で設定し、PostgreSQLに接続して動作します。マイグレーションは起動時に自動適用されます。ユーザー管理やアクションリンクの生成に使える管理用エンドポイント、確認・アカウント復旧・招待用のメールテンプレート、任意で有効化できるCAPTCHAチェック、再利用検出機能付きのリフレッシュトークンローテーション、OpenTelemetryによるトレースとメトリクスを備えています。NetlifyのGoTrueコードベースをフォークしたプロジェクトで、機能面では本家から独自に発展しています。
このプロジェクトはGoライブラリではなくサービスとしての実行を想定しています。メンテナーは、TLS対応プロキシの背後で実行し、管理対象のスキーマを変更しないことを推奨しています。
主な機能
- 01JWTのアクセストークンとリフレッシュトークンを発行し、リフレッシュトークンのローテーションと再利用検出に対応
- 02メールアドレスとパスワード、マジックリンク、電話番号OTP、匿名でのサインインに対応
- 03Google、Apple、GitHub、Discordなど、多数のOAuthプロバイダーと連携
- 04ユーザーの作成・更新・BANや、アクションリンクの生成に使える管理用APIを搭載
- 05確認、アカウント復旧、招待、通知用のカスタマイズ可能なメールテンプレートを送信
- 06OpenTelemetryのトレースと、PrometheusまたはOpenTelemetry形式のメトリクスをエクスポート
ユースケース
- SupabaseプロジェクトやセルフホストのSupabase環境に、ユーザーアカウントとソーシャルログインを追加する
- PostgreSQLベースのAPIが行レベルのアクセス制御に使うJWTを発行する
- メール、電話番号、OAuthによるサインインに対応した認証サービスをセルフホストで運用する
クイックスタート
- 1
コンテナでローカルのPostgresデータベースを起動する
docker-compose -f docker-compose-dev.yml up postgres - 2
authバイナリをビルドする
make build - 3
authバイナリを実行する
./auth
使う前に知っておきたいこと
- 本番環境で実行するには、セキュリティアップデートを速やかに適用するプロセスが必要です。また、READMEではホスト型のSupabase Authの使用を推奨しています。
- Goライブラリとしての使用を想定しておらず、Go APIの互換性は保証されません。
- マルチテナントやスーパー管理者など、Netlifyから引き継いだ一部の機能は予告なく削除される場合があります。
収録されている特集
トピック
よくある質問
- auth とは?
- Supabase Authを支える、JWTを発行するGo製の認証・ユーザー管理サーバー。 Authは、Goで書かれたユーザー管理・認証サーバーです。ユーザー登録とサインインを処理し、JWTのアクセストークンとリフレッシュトークンを発行します。また、PostgRESTでのRow Level Securityなど、Supabaseの機能を支えるID基盤を提供します。メールアドレスとパスワード、マジックリンク、電話番号へのOTP送信、Google、Apple、GitHub、Discordなどの外部OAuthプロバイダーによるサインインに対応しています。
- auth は無料で使えますか?ライセンスは?
- auth は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- auth は今もメンテナンスされていますか?
- 活発にメンテナンス中。auth の最終コミットは 2026年11月5日 です。
- auth は何に使えますか?
- SupabaseプロジェクトやセルフホストのSupabase環境に、ユーザーアカウントとソーシャルログインを追加する PostgreSQLベースのAPIが行レベルのアクセス制御に使うJWTを発行する メール、電話番号、OAuthによるサインインに対応した認証サービスをセルフホストで運用する
- auth のインストール方法は?
- コンテナでローカルのPostgresデータベースを起動する: docker-compose -f docker-compose-dev.yml up postgres authバイナリをビルドする: make build authバイナリを実行する: ./auth
- auth はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/supabase/auth
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
OIDCとOAuth 2.1を基盤とするオープンソースの認証・認可インフラ。マルチテナント、エンタープライズSSO、RBACをSaaSやAIアプリ向けに提供します。
プラグインで2FAやマルチテナントに対応できる、TypeScript向けのフレームワーク非依存な認証・認可フレームワーク。
FastAPIアプリケーションにユーザー登録、ログイン、パスワードリセット、メール認証を追加するPythonライブラリです。
Postgresクエリ、認証、ストレージ、Realtime、Edge Functionsに対応するSupabase公式Pythonクライアントライブラリのモノレポ。
SpringなどのWebスタック向けに、ログイン、権限管理、SSO、OAuth2、JWT、API署名を提供するJava認証・認可フレームワーク。