

**の新しいコンソールエクスペリエンスの紹介 AWS WAF**

更新されたエクスペリエンスを使用して、コンソールの任意の場所で AWS WAF 機能にアクセスできるようになりました。詳細については、[「コンソールの使用](https://docs.aws.amazon.com/waf/latest/developerguide/working-with-console.html)」を参照してください。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# AWS WAF モバイル SDK 仕様
<a name="waf-mobile-sdk-specification"></a>

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

**`WAFToken`**  
 AWS WAF トークンを保持します。    
**`getValue()`**  
`WAFToken` の `String` 表現を取得します。

**`WAFTokenProvider`**  
モバイルアプリケーションでトークンを管理します。`WAFConfiguration` オブジェクトを使用してこれを実装します。    
**`getToken()`**  
バックグラウンド更新が有効になっている場合、キャッシュされたトークンが返されます。バックグラウンド更新が無効になっている場合、 への同期呼び出しがブロック AWS WAF され、新しいトークンを取得します。  
**`loadTokenIntoProvider(WAFToken)`**  
指定されたトークンを `WAFTokenProvider` にロードし、プロバイダーが管理していたトークンを置き換えます。トークンプロバイダーは新しいトークンの所有権を取得し、今後の更新を処理します。このオペレーションでは、`WAFConfiguration` で `setTokenCookie` が有効になっている場合、Cookie ストアのトークンも更新されます。  
**`onTokenReady(WAFTokenResultCallback)`**  
アクティブなトークンの準備ができたら、トークンを更新し、指定されたコールバックを呼び出すようにトークンプロバイダーに指示します。トークンプロバイダーは、トークンがキャッシュされて準備ができたときに、バックグラウンドスレッドでコールバックを呼び出します。アプリケーションが最初にロードされたときや、アクティブ状態に戻ったときにこれを呼び出します。アクティブ状態に戻ることの詳細については、「[アプリケーションが非アクティブ状態になった後のトークンの取得](waf-mobile-sdk-how-it-works.md#waf-mobile-sdk-how-back-from-inactive)」を参照してください。  
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](https://developer.apple.com/documentation/foundation/url)」を参照してください。Android の場合は、「[java.net URL](https://docs.oracle.com/javase/7/docs/api/java/net/URL.html)」を参照してください。  
**`backgroundRefreshEnabled`**   
トークンプロバイダーがバックグラウンドでトークンを更新するかどうかを示します。これを設定すると、トークンプロバイダーは、自動トークン更新アクティビティを管理する構成設定に従って、バックグラウンドでトークンを更新します。  
必須: いいえ  
タイプ: `Boolean`  
デフォルト値: `TRUE`  
**`domainName`**   
トークンで使用するドメインは、トークン取得とクッキーの保存に使用されます。例えば、`example.com`、`aws.amazon.com` です。これは通常、保護パック (ウェブ ACL) に関連付けられているリソースのホストドメインであり、ウェブリクエストの送信先です。ACFP マネージドルールグループ `AWSManagedRulesACFPRuleSet` の場合、通常はルールグループ設定で指定したアカウント作成パスのドメインと一致する単一のドメインになります。ATP マネージドルールグループ `AWSManagedRulesATPRuleSet` の場合、通常はルールグループ設定で指定したログインパスのドメインと一致する単一のドメインになります。  
パブリックサフィックスは許可されません。たとえば、`gov.au` または `co.uk` をトークンドメインとして使用することはできません。  
ドメインは、保護されたホストドメインと保護パック (ウェブ ACL) のトークンドメインリストに基づいて、 AWS WAF が受け入れるドメインである必要があります。詳細については、「[AWS WAF 保護パック (ウェブ ACL) トークンドメインリスト設定](waf-tokens-domains.md#waf-tokens-domain-lists)」を参照してください。  
必須: はい  
タイプ: `String`   
**`maxErrorTokenRefreshDelayMsec`**   
失敗した試行後にトークンの更新を繰り返すまでの待機時間の最大値 (ミリ秒)。失敗した試行の自動再試行ごとに、指定された入力遅延時間までエクスポネンシャルバックオフが追加されます。この値は、トークンの取得が失敗し、`maxRetryCount` 回再試行された後に使用されます。  
必須: いいえ  
タイプ: `Integer`  
デフォルト値: `5000` (5 秒)  
許容される最小値: `1` (1 ミリ秒)  
許容される最大値: `30000` (30 秒)  
**`maxRetryCount`**   
トークンがリクエストされたときに、エクスポネンシャルバックオフで実行する最大再試行回数。  
必須: いいえ  
タイプ: `Integer`  
デフォルト値: `Infinity`  
許容される最小値: `0`  
許容される最大値: `100`  
**`setTokenCookie`**   
SDK の Cookie マネージャーがリクエストに、およびその他のエリアにトークン Cookie を追加するかどうかを示します。  
`TRUE` 値の場合:   
+ cookie マネージャーは、パスが `tokenCookiePath` で指定されたパスの下にあるすべてのリクエストにトークン Cookie を追加します。
+ `WAFTokenProvider` オペレーションは、トークンプロバイダーにロードするだけでなく、Cookie ストアのトークン `loadTokenIntoProvider()` を更新します。
必須: いいえ  
タイプ: `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 分)

## AWS WAF モバイル SDK エラー
<a name="waf-mobile-sdk-errors"></a>

このセクションでは、現在の AWS WAF モバイル SDK バージョンで発生する可能性のあるエラーを一覧表示します。

**`SdkError`**  
トークンの取得に失敗した場合に返されるエラータイプ。Android と iOS SDK のエラータイプは同じです。  
 AWS WAF モバイル SDK には次のエラータイプがあります。    
**`invalidChallenge`**  
このエラーは、トークンサーバーが無効なチャレンジデータを返すか、レスポンス BLOB が攻撃者によって変更された場合に返されます。  
**`errorInvokingGetChallengeEndpoint`**  
このエラーは、トークンサーバーが成功しないレスポンスコードをクライアントに返すか、ネットワークエラーが発生したときに返されます。  
**`invalidVerifyChallengeResponse`**  
このエラーは、 AWS WAF サーバーの検証レスポンス`aws-waf-token`から を取得する際にエラーが発生した場合、またはサーバーレスポンスが改ざんされた場合に返されます。  
**`errorInvokingVerifyEndpoint`**  
このエラーは、クライアントが AWS WAF サーバーから不正な応答を受け取ったとき、または解決されたチャレンジを検証するときにネットワークエラーを受け取ったときに返されます。  
**`internalError`**  
このエラーは、SDK 自体の内部で発生する可能性のある他のすべてのエラーに対して返されます。

**`socketTimeoutException`**  
このエラーは、トークンの取得中にネットワークエラーが発生したときに返されることがよくあります。  
これにエラー、以下によって発生する可能性があります。  
+ 低ネットワーク帯域幅: ネットワーク接続設定を確認する
+ ミューテーションされたアプリケーション統合 URL: AWS WAF コンソールに表示される内容から統合 URL が変更されていないことを確認します。