AWS WAF モバイル SDK の仕様 - AWS WAF、AWS Firewall Manager、および AWS Shield Advanced

AWS WAF モバイル SDK の仕様

このセクションでは、AWS WAF モバイル SDK の利用可能な最新バージョンに対応する SDK オブジェクト、オペレーション、および構成設定を一覧表示します。構成設定のさまざまな組み合わせでトークンプロバイダーとオペレーションがどのように連携するかについては、「AWS WAF モバイル SDK の仕組み」を参照してください。

WAFToken

AWS WAF トークンを保持します。

getValue()

WAFTokenString 表現を取得します。

WAFTokenProvider

モバイルアプリケーションでトークンを管理します。WAFConfiguration オブジェクトを使用してこれを実装します。

getToken()

バックグラウンド更新が有効になっている場合、キャッシュされたトークンが返されます。バックグラウンド更新が無効になっている場合、AWS WAF に同期的にブロックする呼び出しを行って新しいトークンを取得します。

onTokenReady(WAFTokenResultCallback)

アクティブなトークンの準備ができたら、トークンを更新し、指定されたコールバックを呼び出すようにトークンプロバイダーに指示します。トークンプロバイダーは、トークンがキャッシュされて準備ができたときに、バックグラウンドスレッドでコールバックを呼び出します。アプリケーションが最初にロードされたときや、アクティブ状態に戻ったときにこれを呼び出します。アクティブ状態に戻ることの詳細については、「アプリケーションが非アクティブ状態になった後のトークンの取得」を参照してください。

Android または iOS アプリケーションの場合、WAFTokenResultCallback を、リクエストされたトークンの準備ができたときにトークンプロバイダーが呼び出すオペレーションに設定できます。WAFTokenResultCallback の実装では、パラメータ WAFTokenSdkError を取得する必要があります。iOS アプリケーションでは、代わりにインライン関数を作成できます。

storeTokenInCookieStorage(WAFToken)

指定された AWS WAF トークンを SDK の Cookie マネージャに保存するように WAFTokenProvider に指示します。デフォルトでは、トークンは最初に取得されたときと更新されたときのみ、Cookie ストアに追加されます。アプリケーションが何らかの理由で共有 Cookie ストアをクリアしても、SDK は次回の更新まで AWS WAF トークンを自動的に追加しません。

WAFConfiguration

WAFTokenProvider の実装のための設定を保持します。これを実装すると、ウェブ ACL の統合 URL、トークンで使用するドメイン名、トークンプロバイダーが使用するデフォルト以外の設定を指定します。

次のリストは、WAFConfiguration オブジェクトで管理できる構成設定を示しています。

applicationIntegrationUrl

アプリケーション統合 URL。これは、AWS WAF コンソールで、または getWebACL API コールを通じて取得します。

必須: はい

タイプ: アプリケーション固有の URL。iOS の場合は、「iOS URL」を参照してください。Android の場合は、「java.net URL」を参照してください。

backgroundRefreshEnabled

トークンプロバイダーがバックグラウンドでトークンを更新するかどうかを示します。これを設定すると、トークンプロバイダーは、自動トークン更新アクティビティを管理する構成設定に従って、バックグラウンドでトークンを更新します。

必須: いいえ

タイプ: Boolean

デフォルト値: TRUE

domainName

トークンで使用するドメインは、トークン取得とクッキーの保存に使用されます。例えば、example.comaws.amazon.com などです。これは通常、ウェブ ACL に関連付けられているリソースのホストドメインであり、ウェブリクエストの送信先です。ACFP マネージドルールグループ AWSManagedRulesACFPRuleSet の場合、通常はルールグループ設定で指定したアカウント作成パスのドメインと一致する単一のドメインになります。ATP マネージドルールグループ AWSManagedRulesATPRuleSet の場合、通常はルールグループ設定で指定したログインパスのドメインと一致する単一のドメインになります。

パブリックサフィックスは許可されません。たとえば、gov.au または co.uk をトークンドメインとして使用することはできません。

ドメインは、保護されたホストドメインおよびウェブ ACL のトークンドメインリストに基き、AWS WAF が受け入れるものでなければなりません。詳細については、「AWS WAF ウェブ ACL トークンドメインリストの設定」を参照してください。

必須: はい

タイプ: String

maxErrorTokenRefreshDelayMsec

失敗した試行後にトークンの更新を繰り返すまでの待機時間の最大値 (ミリ秒)。この値は、トークンの取得が失敗し、maxRetryCount 回再試行された後に使用されます。

必須: いいえ

タイプ: Integer

デフォルト値: 5000 (5 秒)

許容される最小値: 1 (1 ミリ秒)

許容される最大値: 30000 (30 秒)

maxRetryCount

トークンがリクエストされたときに、エクスポネンシャルバックオフで実行する最大再試行回数。

必須: いいえ

タイプ: Integer

デフォルト値: バックグラウンドリフレッシュが有効になっている場合、5。そうでない場合は、3 です。

許容される最小値: 0

許容される最大値: 10

setTokenCookie

SDK の cookie マネージャーがリクエストにトークン cookie を追加するかどうかを示します。デフォルトでは、これは、すべてのリクエストにトークン cookie を追加します。cookie マネージャーは、パスが tokenCookiePath で指定されたパスの下にあるすべてのリクエストにトークン cookie を追加します。

必須: いいえ

タイプ: Boolean

デフォルト値: TRUE

tokenCookiePath

setTokenCookieTRUE の場合に使用されます。SDK の cookie マネージャーでトークン cookie を追加する最上位レベルのパスを示します。マネージャーは、このパスに送信するすべてのリクエストとすべての子パスにトークン cookie を追加します。

例えば、これを /web/login に設定すると、マネージャーには、/web/login に送信されるすべてのトークン cookie と、その子パスのいずれかが含まれます (/web/login/help など)。//web/web/order などの他のパスに送信されたリクエストのトークンは含まれません。

必須: いいえ

タイプ: String

デフォルト値: /

tokenRefreshDelaySec

バックグラウンドの更新に使用されます。バックグラウンドトークンが更新されるまでの最大時間 (秒)。

必須: いいえ

タイプ: Integer

デフォルト値: 88

許容される最小値: 88

許容される最大値: 300 (5 分)