7
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Ory Kratosのクイックスタートやってみた

7
Last updated at Posted at 2026-02-26

はじめに

Ory Kratosの公式クイックスタートに沿ってユーザー登録とログインを試します。

Ory Kratosはオープンソースの認証・ユーザー管理システムで、セルフホストで運用できます。Kratos自体はUIを持たずAPIのみを提供する設計で、クイックスタートにはサンプルのUIが付属しています。本記事ではDockerを使ってローカル環境でクイックスタートを実施し、ユーザー登録からログインまでの一連の流れを確認します。

公式ドキュメントは以下で公開されています。
https://www.ory.com/docs/kratos/quickstart

前提条件

以下がインストールされている必要があります。

  • Git
  • Docker / Docker Compose

セットアップ

リポジトリのクローン

Ory Kratosのリポジトリをクローンします。

git clone https://github.com/ory/kratos.git
cd kratos

コンテナの起動

以下のコマンドでコンテナを起動します。

docker compose -f quickstart.yml -f quickstart-standalone.yml up --force-recreate

初回はDockerイメージのダウンロードに時間がかかります。

起動が完了すると、以下のサービスが利用可能になります。

ポート サービス 役割
4455 Node.js UI ユーザー向けの画面
4433 Kratos Public API 認証フロー用API
4434 Kratos Admin API 管理用API
4436 MailSlurper テスト用メールサーバー

ブラウザでhttp://127.0.0.1:4455/にアクセスするとウェルカム画面が表示されます。

ウェルカム画面

左側のメニューから各機能にアクセスできます。

動作確認

ユーザー登録

左側メニューのSign Upを押すと登録画面が表示されます。

登録画面

メールアドレス、名前を入力してSign upボタンを押します。

登録画面(入力後)

続いてパスワードの入力画面が表示されます。

パスワード入力画面

パスワードを入力してSign upボタンを押すと、メールアドレスの確認画面に遷移します。

確認コード入力画面

確認コードの入力を求められます。確認コードはメールで送信されています。

メールアドレスの確認

別のタブでhttp://127.0.0.1:4436/にアクセスするとMailSlurperの画面が開きます。MailSlurperは開発用のメールサーバーで、Kratosから送信されたメールを確認できます。

MailSlurperのメール一覧

受信したメールをクリックすると確認コードが表示されます。

確認メールの内容

メール内のリンクをクリックすると確認コードが入力された状態で確認画面に遷移します。確認コードを手動で入力する場合は、確認画面に戻りコードを入力してください。Continueボタンを押すとメールアドレスの確認が完了します。

メールアドレスの確認が完了すると以下の画面が表示されます。

メール確認完了画面

ログイン済み状態の確認

登録が完了すると自動的にログイン状態になります。ウェルカム画面に戻ると、左側メニューのSign InSign Upがグレーアウトされ、代わりにAccount SettingsLog outが有効になっています。

ログイン済み状態の画面

ログアウトとログイン

Log outを押すとログアウトされ、ログイン画面に遷移します。

ログイン画面

先ほど登録したメールアドレスとパスワードを入力してSign in with passwordボタンを押すとログインできます。

クリーンアップ

動作確認が完了したらコンテナを停止します。

docker compose -f quickstart.yml -f quickstart-standalone.yml down -v

-vオプションを付けることでボリュームも削除されます。

おわりに

Ory Kratosのクイックスタートを使ってユーザー登録からログインまでの流れを確認しました。

実際に触ってみると、メールアドレスの確認フローやパスワードポリシーなど認証に必要な仕組みがひととおり揃っており、クイックスタートだけでもその完成度の高さが伝わってきました。UIを自前で用意する設計のため、既存サービスへの組み込みにも柔軟に対応できそうです。

認証基盤を自社で持ちたいがゼロから作るのは避けたい、というケースではKratosは有力な選択肢になりそうです。今回はクイックスタートの範囲でしたが、ソーシャルログインや多要素認証なども対応しているので、引き続き掘り下げていきたいです。

7
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?