AWS WAF モバイル SDK の仕様
このセクションでは、AWS WAF モバイル SDK の利用可能な最新バージョンに対応する SDK オブジェクト、オペレーション、および構成設定を一覧表示します。構成設定のさまざまな組み合わせでトークンプロバイダーとオペレーションがどのように連携するかについては、「AWS WAF モバイル SDK の仕組み」を参照してください。
WAFToken
-
AWS WAF トークンを保持します。
getValue()
-
WAFToken
のString
表現を取得します。
WAFTokenProvider
-
モバイルアプリケーションでトークンを管理します。
WAFConfiguration
オブジェクトを使用してこれを実装します。getToken()
-
バックグラウンド更新が有効になっている場合、キャッシュされたトークンが返されます。バックグラウンド更新が無効になっている場合、AWS WAF に同期的にブロックする呼び出しを行って新しいトークンを取得します。
onTokenReady(WAFTokenResultCallback)
-
アクティブなトークンの準備ができたら、トークンを更新し、指定されたコールバックを呼び出すようにトークンプロバイダーに指示します。トークンプロバイダーは、トークンがキャッシュされて準備ができたときに、バックグラウンドスレッドでコールバックを呼び出します。アプリケーションが最初にロードされたときや、アクティブ状態に戻ったときにこれを呼び出します。アクティブ状態に戻ることの詳細については、「アプリケーションが非アクティブ状態になった後のトークンの取得」を参照してください。
Android または iOS アプリケーションの場合、
WAFTokenResultCallback
を、リクエストされたトークンの準備ができたときにトークンプロバイダーが呼び出すオペレーションに設定できます。WAFTokenResultCallback
の実装では、パラメータWAFToken
、SdkError
を取得する必要があります。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.com
、aws.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
-
setTokenCookie
がTRUE
の場合に使用されます。SDK の cookie マネージャーでトークン cookie を追加する最上位レベルのパスを示します。マネージャーは、このパスに送信するすべてのリクエストとすべての子パスにトークン cookie を追加します。例えば、これを
/web/login
に設定すると、マネージャーには、/web/login
に送信されるすべてのトークン cookie と、その子パスのいずれかが含まれます (/web/login/help
など)。/
、/web
、/web/order
などの他のパスに送信されたリクエストのトークンは含まれません。必須: いいえ
タイプ:
String
デフォルト値:
/
tokenRefreshDelaySec
-
バックグラウンドの更新に使用されます。バックグラウンドトークンが更新されるまでの最大時間 (秒)。
必須: いいえ
タイプ:
Integer
デフォルト値:
88
許容される最小値:
88
許容される最大値:
300
(5 分)