announcements

IdentiFlows.devの紹介:アイデンティティフローの視覚的リファレンス

探していたアイデンティティフローの図を素早く見つける方法を説明します。最後にどこで見たか思い出せない場合に役立ちます。

本記事は「Introducing IdentiFlows.dev: A Visual Reference for Identity Flows」を翻訳した記事です。

OAuth 2.0やOpenID Connectを扱ったことのある開発者なら誰でも経験があるはずです。フローの正確なシーケンスを再確認する必要があるのに、記憶にある図は仕様書やブログ記事、あるいは2年前のカンファレンスのスライドのどこかに散在しています。メカニズムは十分に文書化されていますが、適切なタイミングで適切な図を見つけるのは容易ではありません。

Auth0とチームの支援を受けながら、ギャップを埋めるためにIdentity Flow Diagramsを構築しました。

Identity Flow Diagramsとは

Identity Flow Diagramsは、一般的なアイデンティティプロトコルの背後にあるシーケンス図の視覚的なリファレンスを開発者やアーキテクトに素早く提供するウェブサイトです。各フローには専用のページがあり、以下の内容が含まれます。

  • フローの目的と使用するタイミングを説明する短い紹介。
  • 関係者間の完全なやり取りを示すシーケンス図。
  • 各段階で何が起こるかの段階的な解説。

目標はシンプルです。仕様書を掘り下げたり、半年前に読んだドキュメントページの記憶をたどったりするよりも早く情報を提供します。

現在の提供内容

ウェブサイトは現在4つのカテゴリに分かれています。具体的にはUser Login & SSO、Application & API Security、Security Enhancements、Othersです。

Identiflows.dev,Identity Flow Diagramsウェブサイトのホームページ

現在、8つのフローを網羅しています。

静的な図はフロー全体の概要を把握するのに役立ちますが、インタラクティブモードではフローを進めながら各ステップで何が起こるかを学習できます。

identiflows.dev上のアイデンティティ図のインタラクティブモード

初期リリースについて

プロジェクトの現状について率直にお伝えします。完成したプロジェクトではなく、ごく初期のリリースです。初期のフローセットは開発者から最も頻繁に質問される内容を反映しており、最終的にウェブサイトに含まれるすべてではありません。近日中に追加を予定しているフローは以下の通りです。

  • OAuth 2.0 Client Credentials flow。マシンツーマシンシナリオ向けです。
  • OAuth 2.0 Device Authorization flow。ブラウザを持たないデバイスや入力が制限されたデバイス向けです。
  • WebAuthn。パスワードレス認証向けです。

さらに、Token ExchangeやPrivate Key JWT認証など、多くのバックログも控えています。

フィードバックのお願い

プロジェクトの方向性が固まる前の段階こそ、フィードバックが最も役立ちます。identiflows.devを試して不明な点や不足している点、または間違っている点があればぜひお知らせください。下のコメント欄にメッセージを残してください。

About the author

Andrea Chiarelli

Andrea Chiarelli

Principal Developer Advocate

I have over 20 years of experience as a software engineer and technical author. Throughout my career, I've used several programming languages and technologies for the projects I was involved in, ranging from C# to JavaScript, ASP.NET to Node.js, Angular to React, SOAP to REST APIs, etc.

In the last few years, I've been focusing on simplifying the developer experience with Identity and related topics, especially in the .NET ecosystem.

View profile