Workflowsのシステム制限

Workflowsにはベストプラクティスとシステム制限があり、フローの設計と成功に影響する可能性があります。

Workflowsのスケールとパフォーマンスについてのガイド

Okta Workflowsは、IDプロセスを自動化する強力かつ柔軟なプラットフォームです。ライフサイクル管理、データ同期、タスク自動化ユースケースに対応できるように設計、テスト、最適化されていますが、もっと多くのことを行えるように拡張できます。

ここでは、デプロイメントを確実に成功させられるように、一般的なユースケース、重要な原則、フローを構築するときに留意すべき制限について説明します。

Workflowsのエクスペリエンスを向上させるには、次の事項を理解する必要があります。

サポートされるユースケース

Workflowsは多くの作業を行えますが、IDに関連する特定のタスクセットを行うために最適化されています。

ユースケース

テンプレート

コネクター

Okta Workflowsは、ワークフォースアイデンティティーとカスタマーアイデンティティーに関連する一連の主要なユースケースに合わせて最適化・テストされています。

Oktaが開発し、ライブラリーにまとめているインポート可能なテンプレートは、増加を続けています。Oktaは、テンプレートをリリースする前にテンプレートのレビューとテストを行います。

Oktaは、大規模なSaaSコネクターセットを維持しています。これらのコネクターは、ユーザーにわかりやすいノーコードインターフェイスでAPIコールを処理し、組み込みのバックオフや再試行などの最適化機能を備えています。

Okta Workflowsのユースケース」を参照してください。

利用可能なWorkflowsテンプレート」を参照してください。

コネクター」を参照してください。

ユースケースは大まかに3つのゾーンに分類できます。

グリーンゾーン

イエローゾーン

レッドゾーン

これらのユースケースは入念にテストされており、充実したサポートが提供されています。

  • ワークフォースアイデンティティとカスタマーアイデンティティーに関連する、文書化されたOktaの中心的ユースケース。Okta Workflowsのユースケースを参照してください。

  • 特定のレイテンシー要件がない、スケジュール済みのフローと非同期ユースケース。

  • イベント主導のプロビジョニングなど、Oktaとサードパーティ製SaaSシステムの間のインターフェイス(イベントフックを含む)。

  • Oktaまたはサードパーティシステムのデータストリーミングを使ったOktaのsearch、get、listカードによるインバウンドデータの読み取り。「ヘルパーフローを使ったレコードのストリーミング一致」を参照してください。

これらのユースケースでは、アーキテクチャとベストプラクティスに十分な注意を払う必要があり、システムの制限や他の警告に陥るリスクが高くなります。サポートはベストエフォートであり、確実な成功のためには専門的なサービスとの連携をお勧めします。

  • Oktaイベントフックフローが1日100,000イベントを超える。

  • データストリーミングを使わない、Oktaまたはサードパーティシステムからの中規模の一括データ検索またはリスト(「アクションカードによるデータのストリーミング」を参照)。

  • 認証の決定のカスタマイズや、ユーザーとの対話の調整などの同期フロー。

  • 特定の低レイテンシー要件を持つフロー。インラインフックも含みます。「レイテンシー」を参照してください。

  • 3~60秒の中程度のレイテンシー要件を持ち、実行に60秒以上かかる可能性があることが認識されているフロー。

  • 1回限りの大規模ディレクトリのインポート、移行、または一括読み込み。

  • 未加工HTTPリクエストを使った、サードパーティ製システムとのカスタム統合。

  • 単一実行における大量のデータの処理。

  • API Endpointカードで開始されるフロー。

この分野での一般的な課題には次のものがあります。

  • システム負荷によりレイテンシーが平均パフォーマンスの10倍、またはそれ以上変化することがあります。

  • サードパーティ製システムでレート制限やタイムアウトが発生することがあります。

  • 大きなフローは過剰なメモリの使用により停止されることがあります。

  • フローの実行は、進行中にスタックする場合があります。

  • システムは、過剰なリソースの使用を理由にフローの実行を調整することがあります。「実行制限」を参照してください。

次のようなユースケースは現在サポートされていません。

  • 継続的なディレクトリの同期、たとえばWorkflowsと未加工のユーザーAPIを使用してHRaaSアーキテクチャを実装するなど。

  • オンプレミスシナリオのフロー、またはオンプレミスアプリケーションへの接続のサポート。

Workflowsプラットフォームの制限

カテゴリー

タイトル

制限

説明

フロー Orgあたりのアクティブフロー数 プランによって異なる

実行可能なアクティブフローの最大数はプランによって異なります。

  • Workforce Identity Cloudの無料トライアル:5つのアクティブフロー、フロー実行数に上限あり。

  • Workflows Starter:5つのアクティブフロー

  • Light Workflows:50のアクティブフロー

  • Medium Workflows:150のアクティブフロー

  • Unlimited Workflows:無制限のアクティブフロー

無効になっているフローは制限にカウントされません。この制限は組織単位で構成できます。「フロー制限」を参照してください。

従来のWorkflowsエンタイトルメント(たとえば、Advanced Lifecycle Managementのもの)を保有している場合、アクティブな親フローの上限は100です。

エクスポート先フォルダーのフロー数

プランによって異なる

Export FlowまたはExport Folder関数カードでは、エクスポートできるフローの最大数はWorkflowsのサブスクリプションプランによって異なります。組織で利用できるエクスポートキャパシティは、15分おきにリセットされます。

エクスポートを成功させるには、エクスポートするフローの数が割り当て制限を超えないようにします。これを超過するとエクスポートは失敗し、フローは一切エクスポートされません。

カウントされるフローの総数には、サブフォルダー内のフローが含まれます。

フロー制限は、フォルダーサイドバーから表示する[Export(エクスポート)]ダイアログを使って行うエクスポートには適用されません。

フローの実行

Workflowsインスタンスのメモリ制限

100 MB

実行の一環としてフローに保存されるインスタンス変数の制限。

最大一時停止期間

30日

フローを一時停止して人間またはシステムの応答を待機できる時間。この時間が過ぎるとフローは終了します。

フローあたりの最大ステップ数

200万

1つのフロー内で実行できる最大ステップ数。

実行数

Workforce Identity Cloud無料トライアルのみ該当

orgごとに1,000

Workforce Identity Cloud無料トライアルorgには、無料トライアル期間中に実行できるフローの数に制限があります。この制限は予告なしに変更される場合があります。

Workflows Starterプラン、または Light、Medium、Unlimitedプランのorgにはフローの実行制限はありません。

フロー実行のレート制限

フローあたり1秒間に10回の呼び出し

イベントおよびインラインフックの配信は、それぞれレート制限が異なります(次の表を参照)。ただし、APIから直接フローを呼び出す場合、1フローあたり1秒間に10回の呼び出し制限が適用されます。

制限を超過すると、429エラーコードが返されます。

再帰制限

250

ヘルパーフローがそれ自体を呼び出すことができる最大回数。この制限を超過したフローには、次のエラーメッセージが返されます:Stack limit exceeded(スタック制限超過)。

ペイロード制限 1 MB

フロー履歴で単一メッセージが1 MBを超過する場合、そのメッセージは保存されません。出力フィールドのエントリは次のメッセージに置換されます。

データは正常に返されましたが、サイズが大きすぎて表示できません。

メッセージは表示されますが、エラーではありません。これは、データの処理やフローの最終的な成功には影響しません。

フローファイル

添付ファイル

10 MB

Gmailコネクター用のSend Email with Attachmentなどのアクションカードで使用される添付ファイルに関する、フロー内のファイルのサイズ制限。

ダウンロードとアップロード

2 GB

以下のようなダウンロード・アップロード関連のアクションカードで、フロー内のファイルに適用されるサイズ制限。

  • Salesforceコネクター用の「Upload Attachment(添付ファイルのアップロード)」アクションカード

  • Googleドライブコネクター用の「Upload File(ファイルのアップロード)」アクションカード

  • Docusignコネクター用の「Download Document in Envelope(エンベロープ内のドキュメントのダウンロード)」アクションカード。

SFTPファイル転送

25 MB

SFTPコネクターカードを使って転送されるファイルのサイズ制限。

保持期間

30日

Workflowsファイルシステム内にファイルを保存できる最長期間。

フロー履歴 データのTime to Live 30日 Workflows Designerコンソールに表示されるフロー実行履歴の有効期限。

フローテーブル

テーブル数

100

1つのOrgで利用できるテーブル数。

この制限はOrganization単位で構成できます。

行制限

100,000

1つのテーブル内での最大行数。

制限に達するとテーブルに行を追加できなくなります。

列制限

256

1つのテーブル内での最大列数。

制限に達するとテーブルに列を追加できなくなります。

セル制限

16 KB

単一のWorkflowsテーブルセルのサイズ制限。

制限を超える入力でテーブルセルを更新しようとすると、エラーが返されます。

セルの文字制限

16,000

テーブルセルの文字数制限。

API

タイムアウト - 同期

60秒

同期フローを呼び出すAPIエンドポイントへの受信HTTP接続における待機時間。この時間が過ぎると接続は終了します。ただし、フロー自体は終了しません。

APIエンドポイント

ファイルペイロードのサイズ

合計100 MB、パート1つあたり25 MB

マルチパートのHTTPリクエストでは、ペイロードの最大サイズは100 MBです。各パート(ファイル、テキスト、パスワード、メディアなど)の制限は25 MBです。

レイテンシー

Okta Workflowsでは実行レイテンシーは保証されません。通常、フローは高速に実行されます。ただし、Workflowsはマルチテナントシステムであるため、レイテンシーのSLAがありません。

フローの実行時間は以下に基づきます。

  • フローの複雑さ(組み込みの待機を含む)

  • システムリソースの需要が増加してからOktaがキャパシティを増やすまでのタイムラグ

  • サードパーティAPIによるレイテンシーまたはレートの制限

フック

フローのトリガーに使用されるOktaのイベントには制限があります。

完全に非同期的な環境で実行されるため、イベントフックの配信またはフロー実行の順序は保証されません。1人のユーザーに対して複数のイベントが同時に実行される可能性があること、イベントの実行後にユーザーの状態が変化している可能性があることを考慮する必要があります。

たとえば、ユーザーが誤って無効化され、すぐに再アクティブ化される場合があります。無効化イベントに反応するフローは、再アクティブ化イベントの前に実行される可能性もあれば、後に実行される可能性もあるため、無効化フローが実行される時点でユーザーの無効化が不可能になっている場合もあります。

イベントフック呼び出しからの遅延は、通常は60分以内に解決されます。イベントフック呼び出しが60分以上遅延している場合は、Oktaサポートに連絡してください。

インフラストラクチャのフェイルオーバーなどの例外的なケースでは、フェイルオーバープロセスが完了するまで読み取り専用モードでOktaが一部のリクエストを処理する場合があります。その結果、完了できないプロセスに対してイベントが実行される可能性があります。

パスワードインポートインラインフックは、Okta Workflowsが現在サポートしていない具体的な例の1つです。このフックを実行することはできますが、読み取り専用モードであるためパスワードはインポートされません。リスナーは、成功したuser.import.passwordイベントを受信するまでレガシーシステムからユーザーパスワードを削除できません。フックの実行が十分であると想定しないでください。

機能

制限の種類

制限

説明

イベントフック

タイムアウト

3秒

Oktaイベントフックは、完了タイムアウトが3秒で、再試行を1回行います。

エンドポイントが4xx HTTPエラーコードを返した場合、リクエストは再試行されません。

2xxコードはすべて成功とみなされるため、リクエストは再試行されません。外部サービスエンドポイントがリダイレクトで応答した場合、リダイレクトされません。

1日あたりのイベント数

400,000

Oktaは、各orgの24時間以内のイベント数を400,000件に制限しています。orgがこのしきい値に達すると、それ以上のイベントフックはトリガーされなくなります。イベント制限に達する前に(イベント数が280,000に達した時点で)System Logは警告を受信します。イベント制限は、最初のイベントから24時間後にリセットされます。

リクエストが3秒後にタイムアウトすると、イベントフックは1回再試行されます。再試行はorgの制限値にカウントされません。

orgあたりのイベントフックの最大数。

10

1つのOrgにつき、最大10個のアクティブなイベントフックを構成できます。複数のイベントタイプを配信するよう各イベントフックを構成できます。

ペイロードあたりの最大イベントフック数

100イベント

各イベントフックのペイロードで、最大100のイベントをグループ化できます。複数のイベントタイプを配信するよう各イベントフックを構成できます。

インラインフック

タイムアウト

3秒

Oktaインラインフックは、完了タイムアウトが3秒で、再試行を1回行います。

エンドポイントが4xx HTTPエラーコードを返した場合、リクエストは再試行されません。

2xxコードはすべて成功とみなされるため、リクエストは再試行されません。外部サービスエンドポイントがリダイレクトで応答した場合、リダイレクトされません。

1組織あたりの最大インラインフック数

50

組織ごとに設定できるインラインフックの最大数は50です。これは、あらゆるタイプのインラインフックを合わせた合計です。

詳しいガイドラインについては、「イベントフック」と「インラインフック」を参照してください。

自動化

Okta自動化により、Oktaグループに割り当てられているエンドユーザーのライフサイクル中に発生する状況に備えて対処することができます。

カテゴリー

タイトル

制限

説明

自動化 1組織あたりの最大自動化数 50

Orgのアクティブおよび非アクティブな自動化を合計した場合の最大数は50です。

自動化1つあたりの最大グループ数

10

自動化1つあたりの最大グループ数は10です。

自動化1つあたりの最大ユーザー数

100万

単一の自動化に適用される、グループメンバーシップの最大合計ユーザー数は、100万を超えることはできません。

複数のグループで自動化を設定すると、グループにユーザーが追加されるたびにユーザー数が増加します。

合計ユーザー数が100万人を超えると、自動化は実行されず、イベントがシステムログに記録されます。

その他のガイドラインについては「自動化」を参照してください。

コネクタービルダー

コネクタービルダーは、認証とブランディングを使ってAPIエンドポイントとデータ操作関数のパッケージを作成します。

カテゴリー

タイトル

制限

説明

提出

orgあたりのテストデプロイメントの最大数 1日に100

すべてのコネクターのテストデプロイメントの最大数が1日に100です。

Okta API

Okta APIには、すべてのWorkflowsアクションに適用される特定のレート制限があります。これらのレート制限はエンドポイントと価格プランによって異なりますが、Workflowsアクションと外部アプリのアクションの両方に適用されます。詳細については、「レート制限」を参照してください。

Okta APIを使用するカスタム統合を利用しているが、新たにWorkflowsの開発も試している場合、Oktaのレート制限を超過してしまう可能性があります。この場合、どちらのアクティビティも中断されてしまいます。このシナリオを回避するために、新規フローの開発はプレビュー環境内で行ってください。中断が生じたときは、60秒後にレート制限がリセットされるまで新規フローを一時停止してください。

Oktaコネクター

Workflows内のOktaコネクターは、Okta APIを介して通信します。ただし、この内蔵コネクターのレート制限は、Okta APIの通常の制限とは若干異なります。

Category(カテゴリ)

タイトル

制限

説明
APIリクエスト - 同時並行処理

WorkflowsからOkta org

30

全エンドポイントを対象とする、WorkflowsからOkta orgへの同時並行処理リクエストの最大数。

特定ユーザーのGETまたはREADリクエスト

15

Workflowsから/api/v1/users/${id}エンドポイントへの同時並行処理リクエストの最大数。

この制限は、同時並行処理Workflowsリクエスト制限にカウントされません。

APIリクエスト - 合計

WorkflowsからOkta org

1分間に6000

全エンドポイントを対象に、WorkflowsからOkta orgに対して行われる全リクエストの最大数。

Okta APIへの接続で[Authenticate with API Connector cards(APIコネクターカードを使った認証)]を選択している場合は、標準のOkta APIレート制限が適用されます。「レート制限」を参照してください。

内蔵のOktaコネクターには標準のレート制限が適用されないため、Workflowsがこのコネクターを介して行うリクエストはレート制限ダッシュボードに表示されません。

レート制限の修復

すでに購入済みの製品サブスクリプションのデフォルトのレート制限ではニーズを満たせなくなった場合は、DynamicScaleアドオンサービスを購入できます。このアドオンは、本番テナント用には年単位、サンドボックステナント内のテスト用には一時的に購入できます。「DynamicScaleレート制限」を参照してください。

さらに、2021年1月7日より後に作成されたWorkforce Identity Cloud orgでは、デフォルトのレート制限が引き上げられました。「Workforce乗数レート制限」を参照してください。

環境でDynamicScaleまたはWorkforce乗数を利用している場合、Oktaコネクターの制限は次のように変更されます。

Category(カテゴリ)

タイトル

制限

説明
APIリクエスト - 同時並行処理

WorkflowsからOkta org

プランによって異なる

全エンドポイントを対象とする、WorkflowsからOkta orgへの同時並行処理リクエストの最大数。

  • 5x - 50件の同時並行処理リクエスト

  • 10x - 80件の同時並行処理リクエスト

  • 25x - 120件の同時並行処理リクエスト

  • 50x - 150件の同時並行処理リクエスト

特定ユーザーのGETまたはREADリクエスト

プランによって異なる

Workflowsから/api/v1/users/${id}エンドポイントへの同時並行処理リクエストの最大数。

  • 5x - 25件の同時並行処理リクエスト

  • 10x - 40件の同時並行処理リクエスト

  • 25x - 60件の同時並行処理リクエスト

  • 50x - 75の同時並行処理リクエスト

この制限は、同時並行処理Workflowsリクエスト制限にカウントされません。

セルのサポート

Okta Workflowsは、北米、EU、アジア太平洋/日本(APJ)の本番およびプレビューセルで利用できます。

フローで次のいずれかを送信または保存する場合は、Okta Regulated Moderate Cloudを購入し、Oktaのビジネスアソシエイト契約(BAA)を締結する必要があります。

  • 保護された健康情報

  • 個人の健康データ

  • 医療保険の相互運用性と説明責任に関する法律(HIPAA)の対象となるその他の機密データ

セルに関係なく、Okta WorkflowsOktaのFedRAMP承認パッケージの対象外となります。