6.3.2. フローの作成
本セクションでは、フローの仕組みをより詳細に行う方法と、独自のフローを作成する方法を説明します。独自のフローを設計する際に、重要な機能とセキュリティー上の考慮事項があることに注意してください。適切に作成されたフローではログインをできないようにし、ユーザーには任意の設定よりも検証が少なくなるか、単にエラーの原因になります。
フローを作成するには、以下のいずれかを行います。
-
既存のフローをコピーし、変更します。これには、既存のフロー (
Browser
フローなど) を選択し、Copy
ボタンを押します。これにより、作成する前に新しいフローの名前を設定するよう要求されます。 -
ゼロから新しいフローを作成します。これを行うには、
New
ボタンを押します。これはより一般的なケースであるため、この例ではこれを使用します。
新しいフローを作成する場合、最上位のフローを作成する必要があります。
最上位フローの作成
以下のオプションを使用します。
- エイリアス
- フローの名前。
- 説明
- フローに設定できる説明。
- 最上位のフロータイプ
-
フローのタイプ。
client
タイプはクライアント (アプリケーション) の認証にのみ使用されます。その他の場合は、generic
を選択します。
フローが作成されたら、New
ボタンおよび Copy
ボタンに加えて、Delete
、Add execution
、および Add flow
の準備を行います。
空の新規フロー
最後のフローは、フローとサブフローの構造、これらのフローの実行、サブフローおよび実行に設定した要件によって決まります。
実行は Add execution
ボタンで追加できます。リセットメールを OTP を検証するためのリセットメールの送信から、実行にはさまざまなアクションを使用できます。Provider
の横にあるツールチップ (tiny question mark) にマウスをかざすと、実行内容が説明されています。
認証実行の追加
これらは 自動実行 と インタラクティブな実行 に分割できます。自動実行 は Cookie
の実行と似ていますが、フローで問題が発生した場合にそれらのアクションが自動的に実行されます。インタラクティブな実行 は、通常は一部のユーザー入力を取得するためにフローを停止します。正常に実行されると、success な状態になります。これはフローが成功したかどうかの一部であるため、これは重要になります。たとえば、空の Browser
フローでは、誰でもログインできなくなります。そのためには、正常に評価された 1 つ以上の実行が必要になります。たとえば、入力されて送信されるユーザー名パスワードフォーム
などがあります。
サブフローは、Add flow
ボタンを使用してトップレベルのフローに追加できます。これにより、Create Execution Flow
ページと非常に似た Create Top Level Form
ページが開きます。唯一の違いは、Flow Type
は generic
(前のように) または form
のいずれかになります。form
タイプは、組み込み Registration
フローに対して行われる内容など、ユーザーの単一フォームを生成するサブフローを構築するために使用されます。サブフローは、実行に含まれる評価方法に応じて、正常に評価される特別な実行タイプです (これには、含まれるサブフローの評価が含まれます)。この評価のロジックは、各実行およびサブフローの要件によって異なります。
この内容の完全な理解には、フローの評価時に要件がどのように機能するかに関する詳細な説明が必要で、これはサブフローにも適用されます。詳細は、上記の実行要件セクションを参照してください。
実行を追加したら、Requirement が正しい値に設定されていることを確認します。必要が 1 つしかない場合でも、設定されない場合もあります。
フローの作成時に、フローに追加したすべての要素には、右側の Actions
メニューが表示されます。フローに追加したすべての要素には、このメニューの Delete
オプションがあり、フローからこれを削除します。Identity Provider Redirector
の場合のように、実行に Config
メニューオプションを含めることができます。Add execution
および Add flow
メニューオプションを使用して、サブフローの実行およびサブフローを追加することもできます。
最後に、実行の順序は重要であるため、名前の左側に設定されている上下ボタンで、実行とサブフローを各フロー内で上下に動かすことができます。