In che modo è possibile risolvere i problemi con l'autenticazione Amazon Cognito con OpenSearch Dashboards?

Ultimo aggiornamento: 20-10-2021

Sto cercando di accedere a OpenSearch Dashboards utilizzando l'autenticazione Amazon Cognito sul mio cluster Amazon OpenSearch Service (successore di Amazon Elasticsearch Service). Tuttavia, ricevo un errore o ho riscontrato un problema di accesso. Perché accade?

Risoluzione

Ho inserito l'URL di OpenSearch Dashboards, ma non riesco a vedere la pagina di accesso

Nota: OpenSearch Dashboards è il successore di Kibana.

Potresti essere reindirizzato dall'URL di OpenSearch Dashboard al pannello di controllo di Dashboard per diversi motivi:

Nota: l'autenticazione Amazon Cognito non è richiesta. Per richiedere l'autenticazione di Amazon Cognito, modifica la policy di accesso al dominio. Per ulteriori informazioni, consulta Configurazione delle policy di accesso.

Sono reindirizzato alla pagina di accesso di OpenSearch Dashboards, ma non riesco ad accedere

Se vieni reindirizzato alla pagina di accesso di OpenSearch Dashboards ma non riesci ad accedere, Amazon Cognito è configurato in modo errato. Per risolvere questo problema, prendi in considerazione i seguenti approcci:

Errore “Ruolo mancante”

Se è stato abilitato il controllo degli accessi granulari (FGAC) su OpenSearch Dashboards nel dominio OpenSearch Services, potrebbe apparire il seguente errore:

"Missing Role
No roles available for this user, please contact your system administrator."

Questo errore si verifica nel caso di mancata corrispondenza tra l'utente principale o principale IAM e il ruolo di Amazon Cognito assunto. Il ruolo assunto (dal pool di identità Amazon Cognito) deve corrispondere al ruolo IAM specificato per l'utente principale o il lead user.

Per fare in modo che il ruolo IAM dell'utente principale o del lead user corrisponda al ruolo di Amazon Cognito assunto, attenersi alla seguente procedura:

1.    Accedere alla console di OpenSearch Services.

2.    Scegliere il proprio dominio OpenSearch Services.

3.    Scegli Operazioni.

4.    Scegliere Modifica autenticazione.

5.    In Controllo dell'accesso granulare, scegliere Imposta ruolo IAM come utente principale o lead user. Assicurarsi di specificare l'ARN del ruolo dell’Autenticazione Amazon Cognito.

6.    (Facoltativo) Se è stato dimenticato l'ARN dell'utente principale o leader (o altri dettagli di configurazione del ruolo), modifica l'utente principale o l’utente leader. Quando si riconfigura l'utente principale o il lead user, è possibile specificare un nuovo ARN IAM.

7.    Scegliere Invia.

Errore di configurazione del pool di identità non valido

Dopo aver autenticato correttamente il proprio accesso utilizzando Amazon Cognito, è possibile comunque visualizzare il seguente errore:

com.amazonaws.services.cognitoidentity.model.InvalidIdentityPoolConfigurationException:
Invalid identity pool configuration. Check assigned IAM roles for this pool.
(Service: AmazonCognitoIdentity; Status Code: 400; Error Code:
InvalidIdentityPoolConfigurationException; Request ID:
xxxxx-xxxx-xxxx-xxxx-xxxxx)

Questo messaggio di errore si verifica quando Amazon Cognito non dispone delle autorizzazioni idonee per assumere un ruolo IAM per conto dell'utente autenticato. Modificare la relazione di trust per il ruolo IAM in modo da includere quanto segue:

1.    Aprire la console Amazon IAM.

2.    Scegliere i Ruoli.

3.    Selezionare il tuo ruolo IAM.

4.    Scegliere la scheda Relazioni di fiducia.

5.    Scegliere Modifica relazione di fiducia. Assicurarsi che il proprio pool di identità Amazon Cognito possa assumere il ruolo IAM.

Ad esempio:

{
  "Version": "2012-10-17",
  "Statement": [{
    "Effect": "Allow",
    "Principal": {
      "Federated": "cognito-identity.amazonaws.com"
    },
    "Action": "sts:AssumeRoleWithWebIdentity",
    "Condition": {
      "StringEquals": {
        "cognito-identity.amazonaws.com:aud": "identity-pool-id"
      },
      "ForAnyValue:StringLike": {
        "cognito-identity.amazonaws.com:amr": "authenticated"
      }
    }
  }]
}

6.    Scegliere Aggiorna criterio di attendibilità.

Per ulteriori informazioni sull'aggiornamento della policy dei ruoli IAM in cui è abilitato il controllo granulare degli accessi (FGAC), consulta Tutorial: utente principale IAM e Amazon Cognito.

Errore di mancata corrispondenza reindirizzamento

L’utente potrebbe ricevere il seguente errore quando prova ad accedere a OpenSearch Dashboards su OpenSearch Services utilizzando un URL di Dashboards o un URL dell'endpoint personalizzato:

"An error was encountered with the requested page"

Questo errore si verifica quando manca la configurazione dell'URL di richiamata nelle impostazioni del client dell'app di Amazon Cognito.

Per verificare che le impostazioni del client dell'app siano configurate correttamente, attenersi alla seguente procedura:

1.    Accedere alla console Amazon Cognito.

2.    Scegliere Gestisci pool di utenti.

3.    Selezionare il pool di utenti che si desidera modificare.

4.    Sul lato sinistro della console, scegliere Impostazioni client app.

5.    Verificare che gli URL di richiamata e gli URL di disconnessione siano configurati correttamente. Ad esempio:

<dashboards-endpoint>/_dashboards/app/home

Per un dominio in cui è abilitato un endpoint personalizzato, l'URL di richiamata e l'URL di disconnessione avranno il seguente aspetto:

<domain-custom-endpoint>/_dashboards/app/home

Errore del ruolo di autorizzazione del pool di identità Amazon Cognito

Se l’utente riesce ad accedere ma non a visualizzare OpenSearch Dashboards, potrebbe visualizzare il seguente errore:

User: arn:aws:sts:: 123456789012:assumed-role/Cognito_identitypoolAuth_Role/CognitoIdentityCredentials is not authorized to perform: es:ESHttpGet

Per impostazione predefinita, il ruolo IAM autenticato per i pool di identità non include i privilegi necessari per accedere a Dashboards. È possibile trovare il nome del ruolo autenticato e aggiungerlo al criterio di accesso di OpenSearch Services eseguendo le seguenti operazioni:

1.    Accedere alla console Amazon Cognito.

2.    Selezionare Gestisci pool di identità.

3.    Nell'angolo in alto a destra della console, scegliere Modifica pool di identità.

4.    Aggiungere il ruolo autenticato alla policy di accesso al dominio di OpenSearch Services.

Nota: è consigliabile utilizzare una policy basata sulle risorse per gli utenti autenticati. Il ruolo autenticato controlla in modo specifico l'autenticazione Amazon Cognito per Dashboards. Pertanto, non rimuovere altre risorse dalla politica di accesso al dominio.


Questo articolo è stato utile?


Hai bisogno di supporto tecnico o per la fatturazione?