介绍 AWS WAF 的全新控制台体验
现在,您可以使用更新后的体验访问控制台中任意位置的 AWS WAF 功能。有关更多详细信息,请参阅 使用更新的控制台体验。
AWS WAF 移动软件开发工具包规范
本节列出了最新可用版本的 AWS WAF 移动软件开发工具包的软件开发工具包对象、操作和配置设置。有关令牌提供程序和操作如何处理各种配置设置组合的详细信息,请参阅 AWS WAF 移动软件开发工具包的工作原理。
WAFToken-
持有 AWS WAF 令牌。
getValue()-
检索
WAFToken的String表示形式。
WAFTokenProvider-
在您的移动应用程序中管理令牌。使用
WAFConfiguration对象实施此目的。getToken()-
如果启用了后台刷新,则会返回缓存的令牌。如果禁用了后台刷新,则会对 AWS WAF 进行同步阻塞调用以检索新令牌。
loadTokenIntoProvider(WAFToken)-
将指定的令牌加载到
WAFTokenProvider,替换提供者管理的所有令牌。令牌提供者具备新令牌的所有权,并负责日后对其进行刷新。如果在WAFConfiguration中启用setTokenCookie,此操作还会更新 cookie 存储中的令牌。 onTokenReady(WAFTokenResultCallback)-
指示令牌提供程序刷新令牌并在活动令牌准备就绪时调用提供的回调。当令牌被缓存并准备就绪时,令牌提供程序将在后台线程中调用您的回调。在应用程序首次加载和恢复活动状态时调用此函数。有关返回活动状态的更多信息,请参阅 在应用程序处于非活动状态后检索令牌。
对于 Android 或 iOS 应用程序,您可以设置
WAFTokenResultCallback为希望令牌提供程序在请求的令牌准备就绪时调用的操作。您的WAFTokenResultCallback实施必须采用参数WAFToken,SdkError。对于 iOS 应用程序,您可以交替创建内联函数。 storeTokenInCookieStorage(WAFToken)-
指示
WAFTokenProvider将指定的 AWS WAF 令牌存储到软件开发工具包的 Cookie 管理器中。默认情况下,只有在首次获取令牌和刷新令牌时,才会将其添加到 Cookie 存储中。如果应用程序出于任何原因清除了共享 Cookie 存储,则在下次刷新之前,软件开发工具包不会自动重新添加 AWS WAF 令牌。
WAFConfiguration-
保存
WAFTokenProvider实施的配置。实施此操作时,您需要提供保护包(web ACL)的集成 URL、要在令牌中使用的域名以及您希望令牌提供程序使用的任何非默认设置。以下列表指定了可以在
WAFConfiguration对象中管理的配置设置。applicationIntegrationUrl-
应用程序集成 URL。从 AWS WAF 控制台或通过
getWebACLAPI 调用获取。必需:是
类型:应用程序专用 URL。对于 iOS,请参阅 iOS URL
。对于 Android 系统,请参阅 java.net URL 。 backgroundRefreshEnabled表示您是否希望令牌提供程序在后台刷新令牌。如果您设置了此选项,则令牌提供程序会根据管理自动令牌刷新活动的配置设置在后台刷新您的令牌。
必需:否
类型:
Boolean默认值:
TRUEdomainName-
要在令牌中使用的域名,用于令牌获取和 Cookie 存储。例如,
example.com或aws.amazon.com。这通常是与保护包(web ACL)关联的资源的主机域,您将在其中发送 web 请求。对于 ACFP 托管规则组AWSManagedRulesACFPRuleSet,这通常是一个与您在规则组配置中提供的账户创建路径中的域相匹配的单个域。对于 ATP 托管规则组AWSManagedRulesATPRuleSet,这通常是一个与您在规则组配置中提供的登录路径中的域相匹配的单个域。不允许使用公共后缀。例如,您不能使用
gov.au或co.uk作为令牌域。根据受保护的主机域和保护包(web ACL)的令牌域列表,该域必须是 AWS WAF 可以接受的域。有关更多信息,请参阅 AWS WAF 保护包(web ACL)令牌域列表配置。
必需:是
类型:
String maxErrorTokenRefreshDelayMsec-
尝试失败后,重复令牌刷新之前等待的最长时间(以毫秒为单位)。对于失败尝试的每次自动重试,都会添加指数回退,直至给定的输入延迟时间。此值在令牌检索失败且重试
maxRetryCount次后使用。必需:否
类型:
Integer默认值:
5000(5 秒)允许的最小值:
1(1 毫秒)允许的最大值:
30000(30 秒) maxRetryCount-
请求令牌时使用指数回退执行的最大重试次数。
必需:否
类型:
Integer默认值:
Infinity允许的最小值:
0允许的最大值:
100 setTokenCookie表示您是否希望 SDK 的 cookie 管理器在请求或其他区域中添加令牌 cookie。
使用
TRUE值:cookie 管理器会向路径在
tokenCookiePath中所指定路径之下的所有请求添加令牌 cookie。除将令牌加载到令牌提供程序以外,
WAFTokenProvider操作loadTokenIntoProvider()还会更新 cookie 存储中的令牌。
必需:否
类型:
Boolean默认值:
TRUEtokenCookiePath-
当
setTokenCookie是TRUE时使用。表示您希望软件开发工具包的 Cookie 管理器在其中添加令牌 Cookie 的顶级路径。管理员会将令牌 Cookie 添加到您发送到该路径的所有请求以及所有子路径中。例如,如果您将其设置为
/web/login,则管理器将包含发送到/web/login的所有内容及其任何子路径的令牌 Cookie,例如/web/login/help。它不包括发送到其他路径的请求的令牌,例如/、/web或/web/order。必需:否
类型:
String默认值:
/ tokenRefreshDelaySec-
用于背景刷新。后台令牌刷新之间的最长时间(以秒为单位)。
必需:否
类型:
Integer默认值:
88允许的最小值:
88允许的最大值:
300(5 分钟)
AWS WAF 移动 SDK 错误
本节列出当前 AWS WAF 移动 SDK 版本可能出现的错误。
SdkError-
无法检索令牌时返回的错误类型。Android SDK 和 iOS SDK 的错误类型相同。
AWS WAF 移动 SDK 存在以下错误类型:
invalidChallenge-
当令牌服务器返回无效的质询数据,或者响应 blob 被攻击者改变时,就会返回此错误。
errorInvokingGetChallengeEndpoint-
当令牌服务器向客户端发送不成功的响应代码或出现网络错误时,就会返回此错误。
invalidVerifyChallengeResponse-
当从 AWS WAF 服务器的验证响应中检索
aws-waf-token时或服务器响应被篡改时出现错误,就会返回此错误。 errorInvokingVerifyEndpoint-
当客户端收到 AWS WAF 服务器的错误响应或验证已解决的质询时出现网络错误,就会返回此错误。
internalError-
SDK 本身可能发生的所有其他错误都会返回此错误。
socketTimeoutException-
当检索令牌时出现网络错误,通常会返回此错误。
此错误可能由于下列原因导致:
-
网络带宽低:确认您的网络连接设置
-
突变的应用程序集成 URL:确认与 AWS WAF 控制台上显示的内容相比,集成 URL 未进行修改
-