_authpingフローを構築する
_authpingフローは、プラットフォームがAPIを呼び出して有効な認可であることを確認するためのシステムフローです。
このアクションは検証チェックとして機能し、コネクターを初めて認証するとき、新規コネクターを追加するとき、またはフローを開くときに実行されます。
プラットフォームが認識できるように、フローには_authpingという名前を付ける必要があります。_authpingフローはプラットフォームのみが使用するため、エンドユーザーには表示されません。このフローにはオプションや入力のフィールドはありません。
次の例は、完全な_authpingフローがOkta Workflowsにどのように表示されるかを示します。
はじめに
この共通フローを構築するには、事前に次を行う必要があります。
-
コネクターを作成する。「コネクターを作成する」を参照してください。
-
認証を構築する。「認証」を参照してください。
このタスクを開始する
-
ページ右上端の[+ New Flow(新規フロー)]をクリックし、[Flows(フロー)]タブで新規フローを作成します。
-
ページの左端にある[Authping]をクリックします。
-
ツールバーの[Save(保存)]ボタンをクリックし、フローに
_authping
という名前を付けます。_authping
は予約名であり、完全に一致させる必要があることに注意してください。 -
フローの説明フィールドに「
Connection health check
(接続ヘルスチェック)」と入力し、[Save all data that passes through the Flow(フローを通過するすべてのデータを保存)]欄を選択して、[Save(保存)]をクリックします。 -
エラー処理のIf Errorカードをフローの最初のカードとして追加します。
-
カードのTryセクションにFlow Control Call Flowカードを追加します。
-
[Choose Flow(フローの選択)]ボタンをクリックし、事前に作成したhttpHelperフローを選択します。カードには、httpHelperフローに定義されている入力が自動的に入力されます。
-
「ping」として使用するエンドポイントの相対URLを手動で入力します。エンドポイントはサーバーからの認可を必要とし、ping応答には、標準的なHTTPステータスコードを含む小型のデータパケットが含まれている必要があります。
-
リクエストメソッドを手動で入力します(GET、PATCH、POST、PUT、DELETE)。
-
呼び出しに必要な追加情報を、クエリ、ヘッダー、本文のフィールドに入力します。必要なオブジェクトを構築するために、Call Flowカードの前にObject Constructカードを追加する必要がある場合があります。
-
Helper Flowカードの出力には、httpHelperフローの出力と同じキーを定義する必要があります。
-
status_code(数値)
-
headers(オブジェクト)
-
body(オブジェクト)
-
-
If Error関数内のCall Flowカードの右にFlow Control Assignカードを追加します。[Click or drop here to create(クリックまたはドラッグして作成)]をクリックし、フィールドに「message」という名前を付けます。
-
新規フィールドに成功メッセージを手動で追加します。例:
This account is successfully connected
(このアカウントは正常に接続されました)。 -
Error Ifカードの右上にある[View Outputs(出力の表示)]リンクをクリックし、カードの出力セクションを展開します。
-
出力セクションで[Click or drag to create(クリックまたはドラッグして作成)]をクリックし、「
status_code
」と入力します。「Drag output here(出力をこちらにドラッグ)」という入力が2つ表示されます。 -
Call Flowカードのstatus_code出力フィールドをstatus_codeフィールドの下の2つの入力にドラッグします。
-
出力セクションで[Click or drag to create(クリックまたはドラッグして作成)]をクリックし、「
message
」と入力します。 -
Assignカードのmessage出力フィールドをmessageフィールドの下の2つの入力にドラッグします。
-
If Errorカードの上部のドロップダウンを選択し、[If Error]を選択します。ここでは、サービス固有のエラー処理を管理できます。
-
サービスに応じて、If Errorカードの左パネルにあるErrorオブジェクトに追加のキーを追加し、サービスから返されるオブジェクトからステータスコードとエラーメッセージを抽出します。[Enter key name(キー名の入力)]をクリックしてキーを追加します。
-
新しいキーをIf Errorカードの対応出力にドラッグします。
-
エラー処理のIf Error関数カードの右に True/False Compare カードを追加します。
-
If Errorカードの出力にあるstatus_codeフィールドをCompareカードのvalue aフィールドにドラッグし、比較がequal toに設定されていることを確認します。
-
value bフィールドには、リクエストに成功した場合のステータスコードを入力します。これは、ほとんどの場合は
200
です。 -
フィールドのドロップダウンをクリックし、[customize(カスタマイズ)]をクリックしてTrue/False Compareカードの出力フィールドに「working(動作中)」という名前を付けます。これらのフィールドの命名はベストプラクティスであり、必須ではありません。
-
Compareカードのworking出力をReturn Statusカードのworkingフィールドにドラッグします。
-
Object Constructカードを追加します。
-
[Click or drop here to create(クリックまたはドラッグして作成)]をクリックし、
statusCode
というラベルを追加します。 -
If Errorカードの出力にあるstatus_codeフィールドをConstructカードの新しいstatusCodeフィールドにドラッグします。
-
Constructカードに別の入力フィールドを追加し、bodyという名前を付けます。
-
Assign Ifカードのmessage出力フィールドをConstructカードのbodyフィールドにドラッグします。
-
Object Constructカードの出力フィールドにserviceResponseという名前を付けます。
-
ConstructカードのserviceResponse出力を、Return StatusカードのserviceResponseフィールドにドラッグします。
-
Connector AuthpingカードのauthオブジェクトをCall FlowカードのConnection入力フィールドにドラッグします。
-
フローを保存し、テストします。