Come posso risolvere gli errori più comuni relativi al processo di importazione in Amazon Cognito?

6 minuti di lettura
0

Desidero risolvere gli errori più comuni relativi al processo di importazione in Amazon Cognito.

Breve descrizione

I seguenti sono gli errori più comuni associati al processo di importazione di Amazon Cognito:

Errori di importazione attivati da AWS Lambda per la migrazione degli utenti:

  • AccessDeniedException
  • UserCodeSyntaxError
  • ResourceNotFoundException
  • ImportModuleError

Errori di importazione di file CSV:

  • Intestazioni inaspettate
  • Errore utente/non eseguito
  • Processo di importazione scaduto
  • Valore dell'attributo non valido
  • Autorizzazione mancante del ruolo dei log CloudWatch

Risoluzione

Quando utilizzi un file CSV o un trigger Lambda per l'importazione in Amazon Cognito, gli errori vengono registrati nei log Amazon CloudWatch. Visualizza e cerca questi errori nel tuo account AWS.

Errori di importazione del trigger Lambda per la migrazione degli utenti

AccessDeniedException:

Questo errore viene registrato quando al ruolo Lambda manca un'autorizzazione AWS Identity and Access Management (IAM) per eseguire un'azione Amazon Cognito. Ad esempio, AdminInitiateAuth. L'errore AccessDeniedException è simile al seguente:

An error occurred (AccessDeniedException) when calling the AdminInitiateAuth operation: User: arn:aws:sts::ACCOUNT_ID:assumed-role/TestingMigration-role/TestingMigration is not authorized to perform: cognito-idp:AdminInitiateAuth on resource: arn:aws:cognito-idp:eu-central-1:ACCOUNT_ID:userpool/eu-central-1_YYYYOOOO
    because no identity-based policy allows the cognito-idp:AdminInitiateAuth action

Per risolvere l'errore AccessDenidException, procedi come segue:

  1. Apri la console IAM.
  2. Nel riquadro di navigazione, scegli Ruoli e trova il ruolo di esecuzione Lambda.
  3. Scegli la scheda Autorizzazioni per il ruolo IAM.
  4. Espandi il criterio delle autorizzazioni per visualizzare le autorizzazioni associate all'utente.
  5. Assicurati che il criterio includa i seguenti parametri:
    cognito-IDP:AdminInitiateAuth nell'elenco Azioni
    Consenti l'effetto.
  6. Se il criterio non include questi parametri, aggiornalo per includere queste modifiche.
    -oppure-
    crea un nuovo criterio che segua i parametri e collegalo al ruolo IAM. Per ulteriori informazioni, consulta Modifica dei criteri gestiti dal cliente (console).

UserCodeSyntaxError:

Questo errore viene registrato quando viene rilevato un problema di codice nel codice Lambda. Ad esempio, un problema di indentazione.

L'errore UserCodeSyntaxError è simile al seguente:

[ERROR] Runtime.UserCodeSyntaxError: Syntax error in module 'lambda_function': unexpected indent

Per risolvere questo errore, assicurati di verificare il corretto utilizzo della sintassi nel tuo codice.

ResourceNotFoundException:

Questo errore viene registrato quando una risorsa a cui si fa riferimento nel codice Lambda non viene trovata nel tuo account AWS o nella regione AWS. Ad esempio, un client dell’app Amazon Cognito.

L'errore ResourceNotFoundException è simile al seguente:

[ERROR] ResourceNotFoundException: An error occurred (ResourceNotFoundException) when calling the AdminInitiateAuth operation: User pool client 52rXXXXXXXXXXXXXXXXXXge does not exist.

Per risolvere questo errore, conferma che la risorsa in questione sia presente nel tuo account AWS e nella tua regione. Quindi, conferma di aver specificato correttamente l'ID, il nome o Amazon Resource Name (ARN) nel codice Lambda.

ImportModuleError:

Questo errore viene registrato quando si tenta di importare o fare riferimento a un modulo che non esiste nel codice Lambda.

L'errore ImportModuleError è simile al seguente:

[ERROR] Runtime.ImportModuleError: Unable to import module 'lambda_function': No module named lambda_function

Per risolvere questo errore, verifica che il modulo che stai tentando di importare nel codice non includa errori di battitura o riferimenti al modulo inesistenti.

Errori di importazione di file CSV

Intestazioni inaspettate:

Questo errore viene registrato quando si verifica un problema con le intestazioni mancanti o formattate in modo errato nel file CSV.

L'errore Intestazioni inaspettate è simile al seguente:

The header in the CSV file does not match the expected headers. Use the GetCSVHeader API to get the expected headers.

Per risolvere l'errore, effettua le seguenti operazioni:

Ottieni un elenco delle intestazioni corrette eseguendo il seguente comando, dove USER_POOL_ID è il pool di utenti in cui importare gli utenti:

aws cognito-idp get-csv-header --user-pool-id "USER_POOL_ID"

Puoi anche scaricare l'intestazione del file CSV utilizzando la console Amazon Cognito. Per ulteriori informazioni, consulta Download dell'intestazione del file CSV (console).

Errore utente o non eseguito:

Questo errore viene registrato quando si verifica un problema con riferimenti utente duplicati o quando nel file CSV mancano campi obbligatori. Ad esempio, email_verified o cognito:mfa_enabled.

L'errore Errore utente o non eseguito è simile al seguente:

Too many users have failed or been skipped during the import.

Per risolvere questo errore, assicurati di rimuovere gli utenti duplicati dal file CSV e assicurati che siano specificati gli attributi richiesti. Per ulteriori informazioni, consulta Creazione del file CSV di importazione dell'utente.

Processo di importazione scaduto:

Questo errore viene registrato quando si crea un processo, ma non lo si avvia entro 24-48 ore.

L'errore Processo di importazione scaduto è simile al seguente:

The user import job has expired.

Per risolvere questo problema, avvia un processo di importazione utente con il seguente comando:

aws cognito-idp start-user-import-job --user-pool-id "USER_POOL_ID" --job-id "JOB_ID"

Puoi anche avviare il processo utilizzando la console Amazon Cognito. Per ulteriori informazioni, consulta Importazione di utenti da un file CSV (console).

Nota: può essere attivo un solo processo di importazione alla volta per ogni account.

Valore dell'attributo non valido:

Questo errore indica che è stato specificato un valore non valido per un attributo nel file CSV.

L'errore Valore dell'attributo non valido è simile al seguente:

The User Record contains an invalid value for [attribute].

Per risolvere questo problema, verifica i valori specificati per l'attributo. Per ulteriori informazioni sui valori degli attributi, ad esempio il formato corretto per i numeri di telefono, consulta Attributi del pool di utenti.

Autorizzazione mancante per il ruolo di log CloudWatch:

Questo errore indica che il ruolo di log CloudWatch specificato per il processo di importazione CSV presenta uno dei seguenti problemi:

  • Autorizzazioni mancanti, ad esempio creazione di gruppi di log o flussi.
  • Criterio di relazione trust con un’entità che non è valida.

L'errore Autorizzazione mancante del ruolo di log CloudWatch è simile al seguente:

Il ruolo configurato di log CloudWatch non dispone di autorizzazioni o presenta un criterio di attendibilità non valido.

Per risolvere questo problema, assicurati di avere i permessi di identità consentiti per le azioni di CloudWatch. Inoltre, assicurati che cognito-idp.amazonaws.com sia consentito come entità servizio nel criterio di relazione trust. Per ulteriori informazioni, consulta Creazione del ruolo IAM dei log CloudWatch.


AWS UFFICIALE
AWS UFFICIALEAggiornata un anno fa