Come funziona l'SDK AWS WAF per dispositivi mobili - AWS WAFAWS Firewall Manager, e AWS Shield Advanced

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Come funziona l'SDK AWS WAF per dispositivi mobili

Gli SDK per dispositivi mobili forniscono un provider di token configurabile che è possibile utilizzare per il recupero e l'utilizzo dei token. Il fornitore di token verifica che le richieste consentite provengano da clienti legittimi. Quando invii richieste alle AWS risorse con cui proteggi AWS WAF, includi il token in un cookie per convalidare la richiesta. Puoi gestire il cookie del token manualmente o lasciare che sia il fornitore del token a farlo per te.

Questa sezione tratta le interazioni tra le classi, le proprietà e i metodi inclusi nell'SDK per dispositivi mobili. Per le specifiche dell'SDK, consulta. Le specifiche SDK AWS WAF per dispositivi mobili

Recupero e memorizzazione nella cache dei token

Quando crei l'istanza del fornitore di token nella tua app per dispositivi mobili, configuri come desideri che gestisca i token e il recupero dei token. La tua scelta principale è come mantenere i token validi e non scaduti da utilizzare nelle richieste web dell'app:

  • Aggiornamento in background abilitato: questa è l'impostazione predefinita. Il provider del token aggiorna automaticamente il token in background e lo memorizza nella cache. Con l'aggiornamento in background abilitato, quando si chiamagetToken(), l'operazione recupera il token memorizzato nella cache.

    Il provider del token esegue l'aggiornamento del token a intervalli configurabili, in modo che un token non scaduto sia sempre disponibile nella cache mentre l'applicazione è attiva. L'aggiornamento in background viene sospeso mentre l'applicazione è in uno stato inattivo. Per informazioni su questo argomento, vedere. Recupero di un token dopo l'inattività dell'app

  • Aggiornamento in background disabilitato: è possibile disabilitare l'aggiornamento dei token in background e quindi recuperare i token solo su richiesta. I token recuperati su richiesta non vengono memorizzati nella cache e, se lo desideri, puoi recuperarne più di uno. Ogni token è indipendente dagli altri che recuperi e ognuno ha il proprio timestamp che viene utilizzato per calcolare la scadenza.

    Hai le seguenti scelte per il recupero dei token quando l'aggiornamento in background è disabilitato:

    • getToken()— Quando si chiama getToken() con l'aggiornamento in background disabilitato, la chiamata recupera in modo sincrono un nuovo token da. AWS WAF Si tratta di una chiamata potenzialmente bloccante che può influire sulla reattività dell'app se viene richiamata nel thread principale.

    • onTokenReady(WAFTokenResultCallback)— Questa chiamata recupera in modo asincrono un nuovo token e quindi richiama il callback dei risultati fornito in un thread in background quando un token è pronto.

In che modo il fornitore del token tenta di ripetere i recuperi di token non riusciti

Il fornitore di token riprova automaticamente il recupero del token quando il recupero fallisce. I nuovi tentativi vengono inizialmente eseguiti utilizzando il backoff esponenziale con un tempo di attesa iniziale di 100 ms. Per informazioni sui tentativi esponenziali, vedere Tentativi di errore e backoff esponenziale in. AWS

Quando il numero di tentativi raggiunge il valore configuratomaxRetryCount, il fornitore del token smette di provare o passa a provare ogni maxErrorTokenRefreshDelayMsec millisecondo, a seconda del tipo di recupero del token:

  • onTokenReady()— Il fornitore del token passa ad attendere maxErrorTokenRefreshDelayMsec millisecondi tra un tentativo e l'altro e continua a cercare di recuperare il token.

  • Aggiornamento in background: il fornitore del token passa ad attendere maxErrorTokenRefreshDelayMsec millisecondi tra un tentativo e l'altro e continua a cercare di recuperare il token.

  • getToken()Chiamate su richiesta, quando l'aggiornamento in background è disabilitato: il provider di token interrompe il tentativo di recuperare un token e restituisce il valore del token precedente o un valore nullo se non esiste un token precedente.

Recupero di un token dopo l'inattività dell'app

L'aggiornamento in background viene eseguito solo quando l'app è considerata attiva per il tipo di app in uso:

  • iOS: l'aggiornamento in background viene eseguito quando l'app è in primo piano.

  • Android: l'aggiornamento in background viene eseguito quando l'app non è chiusa, indipendentemente dal fatto che sia in primo piano o in background.

Se l'app rimane in uno stato che non supporta l'aggiornamento in background per un periodo superiore ai tokenRefreshDelaySec secondi configurati, il fornitore del token sospende l'aggiornamento in background. Ad esempio, per un'app iOS, se tokenRefreshDelaySec è 300 e l'app si chiude o passa in background per più di 300 secondi, il fornitore del token interrompe l'aggiornamento del token. Quando l'app torna a uno stato attivo, il provider del token riavvia automaticamente l'aggiornamento in background.

Quando l'app torna allo stato attivo, chiama onTokenReady() per ricevere una notifica quando il fornitore del token ha recuperato e memorizzato nella cache un nuovo token. Non limitarti a chiamaregetToken(), perché la cache potrebbe non contenere ancora un token attuale e valido.