Seleccione sus preferencias de cookies

Usamos cookies esenciales y herramientas similares que son necesarias para proporcionar nuestro sitio y nuestros servicios. Usamos cookies de rendimiento para recopilar estadísticas anónimas para que podamos entender cómo los clientes usan nuestro sitio y hacer mejoras. Las cookies esenciales no se pueden desactivar, pero puede hacer clic en “Personalizar” o “Rechazar” para rechazar las cookies de rendimiento.

Si está de acuerdo, AWS y los terceros aprobados también utilizarán cookies para proporcionar características útiles del sitio, recordar sus preferencias y mostrar contenido relevante, incluida publicidad relevante. Para aceptar o rechazar todas las cookies no esenciales, haga clic en “Aceptar” o “Rechazar”. Para elegir opciones más detalladas, haga clic en “Personalizar”.

Ejemplos de código para el SDK AWS WAF móvil

Modo de enfoque
Ejemplos de código para el SDK AWS WAF móvil - AWS WAF, AWS Firewall Manager, y AWS Shield Advanced

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Esta sección se brinda ejemplos de códigos para usar el SDK para móviles.

Inicialización del proveedor de tokens y obtención de tokens

La instancia del proveedor de tokens se inicia mediante un objeto de configuración. A continuación, puede recuperar los tokens mediante las operaciones disponibles. Se indican a continuación los componentes básicos del código exigido.

iOS
let url: URL = URL(string: "Web ACL integration URL")! let configuration = WAFConfiguration(applicationIntegrationUrl: url, domainName: "Domain name") let tokenProvider = WAFTokenProvider(configuration) //onTokenReady can be add as an observer for UIApplication.willEnterForegroundNotification self.tokenProvider.onTokenReady() { token, error in if let token = token { //token available } if let error = error { //error occurred after exhausting all retries } } //getToken() let token = tokenProvider.getToken()
Android

Ejemplo de Java:

String applicationIntegrationURL = "Web ACL integration URL"; //Or URL applicationIntegrationURL = new URL("Web ACL integration URL"); String domainName = "Domain name"; WAFConfiguration configuration = WAFConfiguration.builder().applicationIntegrationURL(applicationIntegrationURL).domainName(domainName).build(); WAFTokenProvider tokenProvider = new WAFTokenProvider(Application context, configuration); // implement a token result callback WAFTokenResultCallback callback = (wafToken, error) -> { if (wafToken != null) { // token available } else { // error occurred in token refresh } }; // Add this callback to application creation or activity creation where token will be used tokenProvider.onTokenReady(callback); // Once you have token in token result callback // if background refresh is enabled you can call getToken() from same tokenprovider object // if background refresh is disabled you can directly call getToken()(blocking call) for new token WAFToken token = tokenProvider.getToken();

Ejemplo de Kotlin:

import com.amazonaws.waf.mobilesdk.token.WAFConfiguration import com.amazonaws.waf.mobilesdk.token.WAFTokenProvider private lateinit var wafConfiguration: WAFConfiguration private lateinit var wafTokenProvider: WAFTokenProvider private val WAF_INTEGRATION_URL = "Web ACL integration URL" private val WAF_DOMAIN_NAME = "Domain name" fun initWaf() { // Initialize the tokenprovider instance val applicationIntegrationURL = URL(WAF_INTEGRATION_URL) wafConfiguration = WAFConfiguration.builder().applicationIntegrationURL(applicationIntegrationURL) .domainName(WAF_DOMAIN_NAME).backgroundRefreshEnabled(true).build() wafTokenProvider = WAFTokenProvider(getApplication(), wafConfiguration) // getToken from tokenprovider object println("WAF: "+ wafTokenProvider.token.value) // implement callback for where token will be used wafTokenProvider.onTokenReady { wafToken, sdkError -> run { println("WAF Token:" + wafToken.value) } } }
let url: URL = URL(string: "Web ACL integration URL")! let configuration = WAFConfiguration(applicationIntegrationUrl: url, domainName: "Domain name") let tokenProvider = WAFTokenProvider(configuration) //onTokenReady can be add as an observer for UIApplication.willEnterForegroundNotification self.tokenProvider.onTokenReady() { token, error in if let token = token { //token available } if let error = error { //error occurred after exhausting all retries } } //getToken() let token = tokenProvider.getToken()

Si setTokenCookie es TRUE, el proveedor de tokens incluye la cookie de token para usted en sus solicitudes web en todas las ubicaciones de la ruta especificada en tokenCookiePath. De forma predeterminada, setTokenCookie es TRUE y tokenCookiePath es /.

Puede limitar el alcance de las solicitudes que incluyen una cookie de token especificando la ruta de la cookie de token, por ejemplo, /web/login. Si lo haces, comprueba que tus AWS WAF reglas no inspeccionen los tokens en las solicitudes que envíes a otras rutas. Cuando usa el grupo de reglas de AWSManagedRulesACFPRuleSet, configura las rutas de registro y creación de cuentas, y el grupo de reglas comprueba si hay tokens en las solicitudes que se envían a esas rutas. Para obtener más información, consulte Adición del grupo de reglas administradas por ACFP a la nueva ACL web. Igualmente, al usar el grupo de reglas de AWSManagedRulesATPRuleSet, configure la ruta de inicio de sesión, y el grupo de reglas comprueba si hay tokens en las solicitudes que se envían a esa ruta. Para obtener más información, consulte Adición del grupo de reglas administradas por ATP a la nueva ACL web.

iOS

Cuando setTokenCookie es TRUE así, el proveedor del token almacena el AWS WAF token en un HTTPCookieStorage.shared e incluye automáticamente la cookie en las solicitudes al dominio que especificasteWAFConfiguration.

let request = URLRequest(url: URL(string: domainEndpointUrl)!) //The token cookie is set automatically as cookie header let task = URLSession.shared.dataTask(with: request) { data, urlResponse, error in }.resume()
Android

Cuando setTokenCookie esTRUE, el proveedor del token almacena el AWS WAF token en una CookieHandler instancia que se comparte en toda la aplicación. Cuando el proveedor de tokens incluye automáticamente la cookie en las solicitudes al dominio que especificó en WAFConfiguration.

Ejemplo de Java:

URL url = new URL("Domain name"); //The token cookie is set automatically as cookie header HttpsURLConnection connection = (HttpsURLConnection) url.openConnection(); connection.getResponseCode();

Ejemplo de Kotlin:

val url = URL("Domain name") //The token cookie is set automatically as cookie header val connection = (url.openConnection() as HttpsURLConnection) connection.responseCode

Si ya tiene inicializada la instancia predeterminada CookieHandler, el proveedor de tokens la usará para administrar las cookies. De lo contrario, el proveedor del token inicializará una nueva CookieManager instancia con el AWS WAF token CookiePolicy.ACCEPT_ORIGINAL_SERVER y, a continuación, establecerá esta nueva instancia como la instancia predeterminada enCookieHandler.

El siguiente código muestra cómo el SDK inicializa el administrador de cookies y el controlador de cookies cuando no están disponibles en su aplicación.

Ejemplo de Java:

CookieManager cookieManager = (CookieManager) CookieHandler.getDefault(); if (cookieManager == null) { // Cookie manager is initialized with CookiePolicy.ACCEPT_ORIGINAL_SERVER cookieManager = new CookieManager(); CookieHandler.setDefault(cookieManager); }

Ejemplo de Kotlin:

var cookieManager = CookieHandler.getDefault() as? CookieManager if (cookieManager == null) { // Cookie manager is initialized with CookiePolicy.ACCEPT_ORIGINAL_SERVER cookieManager = CookieManager() CookieHandler.setDefault(cookieManager) }

Cuando setTokenCookie es TRUE así, el proveedor del token almacena el AWS WAF token en un HTTPCookieStorage.shared e incluye automáticamente la cookie en las solicitudes al dominio que especificasteWAFConfiguration.

let request = URLRequest(url: URL(string: domainEndpointUrl)!) //The token cookie is set automatically as cookie header let task = URLSession.shared.dataTask(with: request) { data, urlResponse, error in }.resume()

Si configura setTokenCookie en FALSE, tendrá que proporcionar la cookie de token manualmente, como encabezado de solicitud HTTP de cookie, en las solicitudes que envíe a su punto de conexión protegido. El siguiente código muestra cómo hacerlo.

iOS
var request = URLRequest(url: wafProtectedEndpoint) request.setValue("aws-waf-token=token from token provider", forHTTPHeaderField: "Cookie") request.httpShouldHandleCookies = true URLSession.shared.dataTask(with: request) { data, response, error in }
Android

Ejemplo de Java:

URL url = new URL("Domain name"); HttpsURLConnection connection = (HttpsURLConnection) url.openConnection(); String wafTokenCookie = "aws-waf-token=token from token provider"; connection.setRequestProperty("Cookie", wafTokenCookie); connection.getInputStream();

Ejemplo de Kotlin:

val url = URL("Domain name") val connection = (url.openConnection() as HttpsURLConnection) val wafTokenCookie = "aws-waf-token=token from token provider" connection.setRequestProperty("Cookie", wafTokenCookie) connection.inputStream
var request = URLRequest(url: wafProtectedEndpoint) request.setValue("aws-waf-token=token from token provider", forHTTPHeaderField: "Cookie") request.httpShouldHandleCookies = true URLSession.shared.dataTask(with: request) { data, response, error in }
PrivacidadTérminos del sitioPreferencias de cookies
© 2025, Amazon Web Services, Inc o sus afiliados. Todos los derechos reservados.