高度なAccess Gatewayポリシーの例
このトピックでは、高度なポリシー構成例を提供します。これらの例は、説明および教育のみを目的としています。
- すべてのURI文字列の大文字と小文字を指定する
- 特定のURに送信するフィールドを選択する
- 大きなファイルのアップロード/ダウンロードにタイムアウトを設定する(Set a timeout for large file uploads and downloads)
- 特定のエラーコードとURLをURIに送信する
- クエリ引数に基づき動作を指定する
- URL文字列の書き換え
- 特定のファイルタイプを保護しない
- AJAXセッション処理の拡張
- 特定の文字によるリクエストの拒否
- WebSocketセキュリティ
すべてのURI文字列の大文字と小文字を指定する
|
説明 |
すべてのURI文字列を小文字に変換します。 |
|
シナリオ |
システムによっては、同じ文字でも大文字と小文字を異なる文字だと解釈します。このような状況を避けるために、すべての文字を小文字で入力します。 |
|
構成 |
保護されたルールを構成して、この設定が |
|
例 |
|
特定のURに送信するフィールドを選択する
|
説明 |
特定のURLへのリクエストに含むフィールドを指定します。 |
|
シナリオ |
リクエストの処理に必要なフィールドのみを送信したいと考えています。これを使用すると、不必要な情報の送信を回避して、帯域幅やストレージなどを節約することができます。 |
|
構成 |
属性名の隣にある鉛筆アイコンをクリックします。属性を含めるには、送信(Send)トグルをオンにします。属性を除外するには、このトグルをオフにします。 |
|
例 |
ヘッダーに変数を追加します。
|
大きなファイルのアップロード/ダウンロードにタイムアウトを設定する(Set a timeout for large file uploads and downloads)
|
説明 |
大きなのファイルのアップロード/ダウンロードにタイムアウト制限を設定します。 |
|
シナリオ |
大きなファイルのアップロードやダウンロードでは、Access Gatewayがネットワークエラーを返します。 |
|
構成 |
リソースの保護されたルールまたはデフォルトルールを開いて、でタイムアウト値を指定します。 |
|
例 |
|
特定のエラーコードとURLをURIに送信する
|
説明 |
該当するURIに特定のリターンコードとURLを返します。 |
|
シナリオ |
ユーザーにデフォルトのエラーメッセージを表示したくない、カスタムHTMLページにリダイレクトしたいと考えています。 |
|
構成 |
保護されたルールを構成して、リターンコードとURLを指定します。 |
|
例 |
|
クエリ引数に基づき動作を指定する
|
説明 |
異なる状況に合わせて動的なレスポンスを構成したいと考えています。 |
|
シナリオ |
構成のテストで認証をスキップしたいと考えています。 |
|
構成 |
保護されたルールを構成して、特定の条件が存在するときに何が起こるかを決定するようにします。 |
|
例 |
|
URL文字列の書き換え
|
説明 |
ゲートウェイでURLの書き換えが有効になっている場合、リンクやリダイレクトがブラウザを間違ったURLへポイントすることがあります。 |
|
シナリオ |
|
|
構成 |
保護されたルールを構成して、1つのURLから別のURLにリクエストがリダイレクトされるようにします。 |
|
備考 |
デフォルトでは、 |
|
1つのリダイレクトの例 |
|
|
複数のリダイレクトの例 |
|
Chrome以外のエージェントを異なるロケーションにリダイレクトする
|
説明 |
特定のユーザーエージェント(この場合Chrome)を使用していないすべてのユーザーを、別のURLにリダイレクトします。 |
|
シナリオ |
ボットやその他の自動リクエストがサーバーに到達するのを防ぎたいと考えています。 |
|
構成 |
保護されたルールを構成して、Access GatewayがChrome以外のエージェントから特定のURLにリクエストをリダイレクトし、301ステータスコード(Moved Permanently)を返すようにします。 |
|
例 |
|
特定のファイルタイプを保護しない
|
説明 |
画像やスタイルシートなど、特定のファイルタイプを保護したくないと考えています。 |
|
シナリオ |
以前のプラットフォームでは、画像やスタイルシートなどのファイルに無制限でアクセスできました。Access Gatewayでも同じようにしたいと考えています。 |
|
構成 |
保護したくないファイルタイプのそれぞれについて、保護されたルールを構成します。 |
|
例 |
|
AJAXセッション処理の拡張
|
説明 |
AJAX呼び出しを使用するアプリは、セッションタイムアウト後にハングアップしたり、更新が必要になったりします。 |
|
シナリオ |
アプリがAJAXを呼び出します。一定期間アイドル状態で、セッションがタイムアウトします。アプリがもう一度AJAXを呼び出すと、セッションが非アクティブのために失敗します。 |
|
構成 |
保護されたルールを構成して、セッションが延長されるようにします。 |
|
注記 |
例にあるスクリプトは定義された間隔で実行され、ユーザーセッションが非アクティブかどうかを確認します。ユーザーセッションが期限切れになると、スクリプトはユーザーに対し警告を発し、ページを更新します。その後、Oktaセッションが存在する場合は、ユーザーが新しいセッションを取得します。存在しない場合は、ユーザーが再度認証を行う必要があります。 スクリプトは、3つのパラメータを受け付けます。
アプリのページにJQueryライブラリーが含まれる場合には、JQueryを使用した例に従ってください。 |
|
例1 |
アプリがJQueryを使用しています。サンプルのメッセージを顧客向けのメッセージに置き換えます。
|
|
例2 |
アプリがJQueryを使用していません。サンプルのメッセージを顧客向けのメッセージに置き換えます。
|
|
例3 |
アプリがiFrameとJQueryを使用しています。iFrameページの1つで置換するタグ(<tag-to-replace>)を特定します。
|
|
例4 |
アプリはiFrameを使用していますが、JQueryを使用していません。iFrameページの1つで置換するタグ(<tag-to-replace>)を特定します。
|
特定の文字によるリクエストの拒否
|
説明 |
危険な文字が含まれるリクエストを拒否します。 |
|
シナリオ |
バックエンドのWebアプリを攻撃する際には、特定の文字が使用されます。これらの文字を含んだリクエストを拒否すると、潜在的な攻撃対象を取り除くことができます。 |
|
構成 |
保護されたルールを構成して、阻止したい文字を含めるようにします。 |
|
例 |
|
WebSocketセキュリティ
|
説明 |
HTTP呼び出しをWebSocket(WSS)呼び出しに変換します。 |
|
シナリオ |
WSSを通信プロトコルとして使用します。Access Gatewayは、HTTP呼び出しからWSS呼び出しに変換することをバックエンドサーバーに通知しなければなりません。 |
|
構成 |
WSSリソースごとに保護ルールを作成します:
|
|
例 |
|