Configurazione dell'autenticazione Amazon Cognito per OpenSearch Dashboards - Amazon OpenSearch Service

Configurazione dell'autenticazione Amazon Cognito per OpenSearch Dashboards

Puoi autenticare e proteggere l'installazione predefinita del servizio OpenSearch di Amazon utilizzando OpenSearch Dashboards con Amazon Cognito. L'autenticazione Amazon Cognito è facoltativa e disponibile solo per i domini che usano OpenSearch o Elasticsearch 5.1 o versioni successive. Se non si configura l'autenticazione Amazon Cognito, è comunque possibile proteggere Dashboards usando una policy di accesso basata su IP e un server proxy, autenticazione di base HTTP o SAML.

Per lo più il processo di autenticazione avviene in Amazon Cognito, ma questa sezione include alcune linee guida e i requisiti per la configurazione delle risorse Amazon Cognito per l'uso di domini OpenSearch Service. A tutte le risorse Amazon Cognito si applicano i prezzi standard.

Suggerimento

La prima volta che si configura un dominio per l'uso dell'autenticazione Amazon Cognito per Dashboards, consigliamo di usare la console. Le risorse Amazon Cognito sono estremamente personalizzabili e la console può aiutare a identificare e comprendere le funzionalità importanti più adatte al proprio caso specifico.

Prerequisiti

Prima di poter configurare l'autenticazione Amazon Cognito per OpenSearch Dashboards, è necessario che siano soddisfatti diversi prerequisiti. La console OpenSearch Service contribuisce a semplificare la creazione di queste risorse, ma la corretta comprensione dello scopo di ogni risorsa semplifica la configurazione e la risoluzione dei problemi. L'autenticazione Amazon Cognito per Dashboards richiede le risorse seguenti:

  • Bacino d'utenza di Amazon Cognito

  • Pool di identità di Amazon Cognito

  • Ruolo IAM a cui è collegata la policy AmazonOpenSearchServiceCognitoAccess (CognitoAccessForAmazonOpenSearch)

Nota

Il bacino d'utenza e il pool di identità devono trovarsi nella stessa Regione AWS. È possibile utilizzare gli stessi bacini d'utenza, pool di identità e ruolo IAM per aggiungere l'autenticazione Amazon Cognito per Dashboards a più domini OpenSearch Service. Per ulteriori informazioni, consultare Limiti.

Informazioni sul bacino d'utenza

I pool di utenti hanno due caratteristiche principali: creano e gestiscono una directory di utenti e permettono agli utenti di registrarsi e accedere. Per istruzioni su come creare un bacino d'utenza, consulta Creazione di un bacino d'utenza nella Guida per gli sviluppatori di Amazon Cognito.

Quando si crea un bacino d'utenza da usare con OpenSearch Service, tenere presente le considerazioni seguenti:

  • Il bacino d'utenza di Amazon Cognito deve avere un nome di dominio. OpenSearch Service usa questo nome di dominio per reindirizzare gli utenti a una pagina per l'accesso a Dashboards. Oltre a un nome di dominio, il pool di utenti non richiede altre configurazioni non predefinite.

  • È necessario specificare gli attributi standard obbligatori del pool, ovvero attributi come nome, data di nascita, indirizzo e-mail e numero di telefono. Poiché non puoi modificare questi attributi dopo che crei il pool di utenti, scegli quelli più importanti a questo punto.

  • Durante la creazione del pool di utenti, scegli se gli utenti possono creare i propri account, la complessità minima delle password per gli account e se abilitare l'autenticazione a più fattori. Se prevedi di usare un provider di identità esterno, queste impostazioni non si escludono a vicenda. Tecnicamente, puoi abilitare il pool di utenti come provider di identità e abilitare un provider di identità esterno, ma la maggior parte degli utenti preferisce scegliere solo uno dei due approcci.

Gli ID dei pool di utenti acquisiscono la forma di region_ID. Se si prevede di usare AWS CLI o un SDK AWS per configurare OpenSearch Service, prendere nota dell'ID.

Informazioni sul pool di identità

I pool di identità consentono di assegnare ruoli temporanei con privilegi limitati agli utenti dopo il loro accesso. Per istruzioni su come creare un pool di identità, consultare Pool di identità nella Guida per gli sviluppatori di Amazon Cognito. Quando si crea un pool di identità da usare con OpenSearch Service, tenere presente le considerazioni seguenti:

  • Se si utilizza la console Amazon Cognito, è necessario selezionare la casella di controllo Consenti l'accesso a identità non autenticate per creare il pool di identità. Al termine della creazione del pool di identità e dopo aver configurato il dominio OpenSearch Service, Amazon Cognito disabilita questa impostazione.

  • Non occorre aggiungere provider di identità esterni al pool di identità. Quando si configura OpenSearch Service per utilizzare l'autenticazione Amazon Cognito, il pool di identità viene configurato per l'uso del bacino d'utenza appena creato.

  • Dopo aver creato il pool di identità, devi scegliere ruoli IAM non autenticati e autenticati. Tali ruoli specificano le policy di accesso associate agli utenti prima e dopo il loro accesso. Se si utilizza la console Amazon Cognito, questa può creare i ruoli per conto dell'utente. Dopo aver creato il ruolo autenticato, prendi nota dell'ARN, che acquisisce la forma di arn:aws:iam::123456789012:role/Cognito_identitypoolAuth_Role.

Gli ID dei pool di identità acquisiscono la forma di region:ID-ID-ID-ID-ID. Se si prevede di usare AWS CLI o un SDK AWS per configurare OpenSearch Service, prendere nota dell'ID.

Informazioni sul ruolo CognitoAccessForAmazonOpenSearch

Il servizio OpenSearch deve disporre delle autorizzazioni necessarie per configurare pool di identità e utenti Amazon Cognito e utilizzarli per l'autenticazione. A questo scopo, puoi utilizzare AmazonOpenSearchServiceCognitoAccess, che è una policy gestita da AWS. AmazonESCognitoAccess è una policy legacy che è stata sostituita da AmazonOpenSearchServiceCognitoAccess quando Amazon Elasticsearch Service è stato rinominato servizio OpenSearch di Amazon. Entrambe le policy forniscono le autorizzazioni minime di Amazon Cognito per l’abilitazione dell'autenticazione Cognito. Per la policy JSON, consultare Console IAM.

Se si utilizza la console per creare o configurare il dominio OpenSearch Service, la console crea un ruolo IAM per conto dell'utente e collega la policy AmazonOpenSearchServiceCognitoAccess (o la policy AmazonESCognitoAccess nel caso di un dominio Elasticsearch) al ruolo. Il nome predefinito per questo ruolo è CognitoAccessForAmazonOpenSearch.

Le policy delle autorizzazioni del ruolo AmazonOpenSearchServiceCognitoAccess e AmazonESCognitoAccess consentono entrambe a OpenSearch Service di completare le seguenti operazioni su tutti i pool di identità e i bacini d'utenza:

  • Azione: cognito-idp:DescribeUserPool

  • Azione: cognito-idp:CreateUserPoolClient

  • Azione: cognito-idp:DeleteUserPoolClient

  • Azione: cognito-idp:UpdateUserPoolClient

  • Azione: cognito-idp:DescribeUserPoolClient

  • Azione: cognito-idp:AdminInitiateAuth

  • Azione: cognito-idp:AdminUserGlobalSignOut

  • Azione: cognito-idp:ListUserPoolClients

  • Azione: cognito-identity:DescribeIdentityPool

  • Azione: cognito-identity:SetIdentityPoolRoles

  • Azione: cognito-identity:GetIdentityPoolRoles

Se utilizzi la AWS CLI o uno degli SDK AWS, devi creare un ruolo, collegare la policy e specificare l'ARN per tale ruolo quando configuri il dominio del servizio OpenSearch. Il ruolo deve avere la relazione di attendibilità seguente:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "opensearchservice.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

Per le istruzioni, consulta Creazione di un ruolo per delegare autorizzazioni a un servizio AWS e Collegamento e scollegamento di policy IAM nella Guida per l'utente IAM.

Configurazione di un dominio per l'utilizzo di Amazon Cognito

Dopo aver soddisfatto tutti i prerequisiti, puoi configurare un dominio del servizio OpenSearch per l'uso di Amazon Cognito per Dashboards.

Nota

Amazon Cognito non è disponibile in tutte le Regioni AWS. Per un elenco delle regioni e degli endpoint supportati, consultare Regioni AWS ed endpoint. Non occorre utilizzare per Amazon Cognito la stessa regione che utilizzi per il servizio OpenSearch.

Configurazione dell'autenticazione Amazon Cognito (console)

Siccome crea il ruolo CognitoAccessForAmazonOpenSearch automaticamente, la console semplifica il più possibile la configurazione. Oltre alle autorizzazioni standard di OpenSearch Service, è necessario disporre del set di autorizzazioni seguente per usare la console e creare un dominio che usa l'autenticazione Amazon Cognito per OpenSearch Dashboards.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "ec2:DescribeVpcs", "cognito-identity:ListIdentityPools", "cognito-idp:ListUserPools", "iam:CreateRole", "iam:AttachRolePolicy" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "iam:GetRole", "iam:PassRole" ], "Resource": "arn:aws:iam::123456789012:role/service-role/CognitoAccessForAmazonOpenSearch" } ] }

Per istruzioni per aggiungere autorizzazioni per un'identità (utente, gruppo di utenti o ruolo), consulta Aggiunta di autorizzazioni per identità IAM (console).

Se CognitoAccessForAmazonOpenSearch esiste già, occorrono meno autorizzazioni:

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "ec2:DescribeVpcs", "cognito-identity:ListIdentityPools", "cognito-idp:ListUserPools" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "iam:GetRole", "iam:PassRole" ], "Resource": "arn:aws:iam::123456789012:role/service-role/CognitoAccessForAmazonOpenSearch" } ] }

Come configurare l'autenticazione Amazon Cognito per Dashboards (console)

  1. Accedi all'indirizzo https://aws.amazon.com e scegli Accedi alla console.

  2. In Analisi, sceglie Servizio OpenSearch di Amazon.

  3. In Domini, seleziona il dominio che desideri configurare.

  4. Scegli Operazioni, quindi Modifica configurazione di sicurezza.

  5. Seleziona Abilita autenticazione Amazon Cognito.

  6. Per Regione selezionare la regione che contiene il bacino d'utenza e il pool di identità di Amazon Cognito.

  7. Per Bacino d'utenza Cognito, seleziona un pool di utenti o creane uno. Per le linee guida, consultare Informazioni sul bacino d'utenza.

  8. Per Pool di identità Cognito, seleziona un pool di identità o creane uno. Per le linee guida, consultare Informazioni sul pool di identità.

    Nota

    I link Crea bacino d'utenza e Crea pool di identità reindirizzano alla console Amazon Cognito e richiedono la creazione manuale di queste risorse. Il processo non è automatico. Per ulteriori informazioni, consultare Prerequisiti.

  9. Per Nome ruolo IAM, utilizza il valore di default CognitoAccessForAmazonOpenSearch (consigliato) o specifica un nuovo nome. Per ulteriori informazioni sullo scopo di questo ruolo, consulta Informazioni sul ruolo CognitoAccessForAmazonOpenSearch.

  10. Sceglie Salva modifiche.

Al termine dell'elaborazione del dominio, consulta Concessione del ruolo autenticato e Configurazione dei provider di identità per gli altri passaggi della configurazione.

Configurazione dell'autenticazione Amazon Cognito (AWS CLI)

Utilizzare il parametro --cognito-options per configurare il dominio OpenSearch Service. La sintassi seguente viene utilizzata dai comandi create-domain e update-domain-config:

--cognito-options Enabled=true,UserPoolId="user-pool-id",IdentityPoolId="identity-pool-id",RoleArn="arn:aws:iam::123456789012:role/CognitoAccessForAmazonOpenSearch"

Esempio

Nell'esempio seguente viene creato un dominio nella regione us-east-1 che abilita l'autenticazione Amazon Cognito per Dashboards tramite il ruolo CognitoAccessForAmazonOpenSearch e fornisce a Cognito_Auth_Role l'accesso al dominio:

aws opensearch create-domain --domain-name my-domain --region us-east-1 --access-policies '{ "Version":"2012-10-17", "Statement":[{"Effect":"Allow","Principal":{"AWS": ["arn:aws:iam::123456789012:role/Cognito_Auth_Role"]},"Action":"es:ESHttp*","Resource":"arn:aws:es:us-east-1:123456789012:domain/*" }]}' --engine-version "OpenSearch_1.0" --cluster-config InstanceType=m4.xlarge.search,InstanceCount=1 --ebs-options EBSEnabled=true,VolumeSize=10 --cognito-options Enabled=true,UserPoolId="us-east-1_123456789",IdentityPoolId="us-east-1:12345678-1234-1234-1234-123456789012",RoleArn="arn:aws:iam::123456789012:role/CognitoAccessForAmazonOpenSearch"

Al termine dell'elaborazione del dominio, consulta Concessione del ruolo autenticato e Configurazione dei provider di identità per gli altri passaggi della configurazione.

Configurazione dell'autenticazione Amazon Cognito (SDK AWS)

Gli SDK AWS (ad eccezione degli SDK per Android e iOS) supportano tutte le operazioni definite nell'Riferimento dell'API di configurazione per il servizio OpenSearch di Amazon, tra cui il parametro CognitoOptions per le operazioni CreateDomain e UpdateDomainConfig. Per ulteriori informazioni sull'installazione e sull'uso degli SDK AWS, consultare Software Development Kit AWS.

Al termine dell'elaborazione del dominio, consulta Concessione del ruolo autenticato e Configurazione dei provider di identità per gli altri passaggi della configurazione.

Concessione del ruolo autenticato

Per impostazione predefinita, il ruolo IAM autenticato configurato seguendo le linee guida fornite in Informazioni sul pool di identità non ha i privilegi necessari per accedere a OpenSearch Dashboards. Al ruolo occorre fornire solo autorizzazioni aggiuntive.

Importante

Se è stato configurato il controllo granulare degli accessi e si utilizza una policy di accesso "aperto" o basata su IP, è possibile ignorare questo passaggio.

È possibile includere queste autorizzazioni in una policy basata su identità, ma a meno che non si desideri che gli utenti autenticati abbiano accesso a tutti i domini OpenSearch Service, l'approccio più comune consiste nell'usare una policy basata su risorse e collegata a un singolo dominio:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::123456789012:role/Cognito_identitypoolAuth_Role" ] }, "Action": [ "es:ESHttp*" ], "Resource": "arn:aws:es:region:123456789012:domain/domain-name/*" } ] }

Per istruzioni sull'aggiunta di una policy basata su risorse a un dominio OpenSearch Service, consultare Configurazione delle policy di accesso.

Configurazione dei provider di identità

Quando si configuri un dominio per utilizzare l'autenticazione Amazon Cognito per Dashboards, OpenSearch Service aggiunge un client app al bacino d'utenza e quindi aggiunge il bacino d'utenza al pool di identità come provider di autenticazione. Lo screenshot seguente mostra la pagina Impostazioni client app nella console Amazon Cognito.


                Console Amazon Cognito che mostra la pagina delle impostazioni del client app
avvertimento

Non rinominare né eliminare il client dell’app.

A seconda della configurazione del pool di utenti, potrebbe essere necessario creare gli account utente manualmente o gli utenti potrebbero crearli autonomamente. Se queste impostazioni sono accettabili, non occorrono alte azioni. Molte persone, tuttavia, preferiscono usare provider di identità esterni.

Per abilitare un provider di identità SAML 2.0, occorre fornire un documento di metadati SAML. Per abilitare provider di identità social come Login with Amazon, Facebook e Google, occorre ottenere un ID app e un segreto dell'app da questi provider. Puoi abilitare qualunque combinazione di provider di identità. La pagina di accesso aggiunge altre opzioni man mano che aggiungi i provider, come mostrato nello screenshot seguente.


                Pagina di accesso con diverse opzioni

Il metodo più semplice per configurare il bacino d'utenza è usare la console Amazon Cognito. Utilizzare la pagina Provider di identità per aggiungere provider di identità esterni e la pagina Impostazioni client app per abilitare e disabilitare i provider di identità per il client app del dominio OpenSearch Service. Ad esempio, potrebbe essere opportuno abilitare il provider di identità SAML e disabilitare Pool di utenti Cognito come provider di identità.

Per istruzioni, consultare Utilizzo della federazione da un bacino d'utenza e Specifica delle impostazioni del provider di identità per l'app del bacino d'utenza nella Guida per gli sviluppatori di Amazon Cognito.

(Facoltativo) Configurazione dell'accesso granulare

Le impostazioni di default del pool di identità assegnano a ogni utente che accede lo stesso ruolo IAM (Cognito_identitypoolAuth_Role) e questo significa che ogni utente può accedere alle stesse risorse AWS. Se, ad esempio, si desidera utilizzare il controllo granulare degli accessi con Amazon Cognito, ad esempio se si desidera che gli analisti dell'organizzazione abbiano accesso in sola lettura a diversi indici, ma gli sviluppatori abbiano accesso in scrittura a tutti gli indici, sono disponibili due opzioni:

  • Puoi creare gruppi di utenti e configurare il provider di identità in modo da scegliere il ruolo IAM in base al token di autenticazione dell'utente (consigliato).

  • Puoi configurare il provider di identità in modo da scegliere il ruolo IAM in base a uno o più ruoli.

Queste opzioni vengono configurate tramite la pagina Modifica pool di identità della console Amazon Cognito, come mostrato nello screenshot seguente. Per una procedura dettagliata che include il controllo granulare degli accessi, consultare Tutorial: utente principale IAM e Amazon Cognito.


                Opzioni per i ruoli per un provider di autenticazione
Importante

Proprio come il ruolo di default, Amazon Cognito deve far parte della relazione di trust di ogni ruolo aggiuntivo. Per maggiori dettagli, consultare Creazione dei ruoli per la mappatura dei ruoli nella Guida per gli sviluppatori di Amazon Cognito.

Gruppi di utenti e token

Quando crei un gruppo di utenti, devi scegliere un ruolo IAM per i membri del gruppo. Per informazioni su come creare i gruppi, consultare Gruppi di utenti nella Guida per gli sviluppatori di Amazon Cognito.

Dopo aver creato uno o più gruppi di utenti, puoi configurare il provider di autenticazione in modo da assegnare agli utenti i ruoli dei rispettivi gruppi anziché il ruolo predefinito del pool di identità. Seleziona Scegli ruolo da token e scegli Usa ruolo autenticato predefinito o DENY per specificare la modalità con cui il pool di identità gestisce gli utenti che non fanno parte di un gruppo.

Regole

Essenzialmente, le regole sono una serie di istruzioni if che Amazon Cognito valuta in sequenza. Ad esempio, se l'indirizzo e-mail di un utente contiene @corporate, Amazon Cognito assegna all'utente il ruolo Role_A. Se l'indirizzo e-mail di un utente contiene @subsidiary, assegna all'utente il ruolo Role_B. In caso contrario, assegna all'utente il ruolo autenticato predefinito.

Per ulteriori informazioni, consultare Utilizzo della mappatura basata su regole per assegnare ruoli agli utenti nella Guida per gli sviluppatori di Amazon Cognito.

(Facoltativo) Personalizzazione della pagina di accesso

La pagina Personalizzazione interfaccia utente della console Amazon Cognito permette di caricare un logo personalizzato e apportare modifiche CSS alla pagina di accesso. Per istruzioni e un elenco completo delle proprietà CSS, consultare Configurazione delle impostazioni di personalizzazione dell'interfaccia utente dell'app per il bacino d'utenza nella Guida per gli sviluppatori di Amazon Cognito.

(Facoltativo) Configurazione della sicurezza avanzata

I bacini d'utenza di Amazon Cognito supportano funzionalità di sicurezza avanzate quali l'autenticazione a più fattori, la verifica di credenziali compromesse e l'autenticazione adattiva. Per ulteriori informazioni, consulta Gestione della sicurezza nella Guida per gli sviluppatori di Amazon Cognito.

Test

Quando la configurazione sembra soddisfacente, accertati che l'esperienza utente soddisfi le aspettative.

Come accedere a OpenSearch Dashboards

  1. Accedi a https://opensearch-domain/_dashboards/ in un browser web.

  2. Accedi usando le credenziali preferite.

  3. Dopo aver eseguito i caricamenti di OpenSearch Dashboards, configurare almeno un modello di indice. Dashboards usa questi modelli per identificare gli indici da analizzare. Immetti *, scegli Passaggio successivo e seleziona Crea modello di indice.

  4. Per cercare o esplorare i dati, sceglie Individua.

Se un passaggio di questo processo non riesce, consulta Problemi di configurazione comuni per informazioni sulla risoluzione dei problemi.

Limiti

Amazon Cognito applica limiti flessibili a molte risorse. Se si desidera abilitare l'autenticazione per Dashboards per un numero elevato di domini OpenSearch Service, consultare Limiti in Amazon Cognito e Richiesta di aumento dei limiti in base alle esigenze.

Ogni dominio OpenSearch Service aggiunge al bacino d'utenza un client app, che aggiunge un provider di autenticazione al pool di identità. Se si abilita l'autenticazione per OpenSearch Dashboards per più di 10 domini, è possibile che venga raggiunto il limite del numero massimo di provider di bacini d'utenza di Amazon Cognito per ogni pool di identità. Se si supera questo limite, qualsiasi dominio OpenSearch Service che si prova a configurare per l'uso dell'autenticazione Amazon Cognito per Dashboards può restare bloccato nello stato di configurazione In fase di elaborazione.

Problemi di configurazione comuni

La tabella seguente elenca i problemi di configurazione più comuni e le relative soluzioni.

Configurazione di OpenSearch Service
Problema Soluzione

OpenSearch Service can't create the role (console)

Non si dispongono di autorizzazioni IAM corrette. Aggiungi le autorizzazioni specificate in Configurazione dell'autenticazione Amazon Cognito (console).

User is not authorized to perform: iam:PassRole on resource CognitoAccessForAmazonOpenSearch (console)

Non si dispone delle autorizzazioni iam:PassRole per il ruolo CognitoAccessForAmazonOpenSearch. Collega la policy seguente al tuo account:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::123456789012:role/service-role/CognitoAccessForAmazonOpenSearch" } ] }

In alternativa, puoi collegare la policy IAMFullAccess.

User is not authorized to perform: cognito-identity:ListIdentityPools on resource

Non è necessario disporre di autorizzazioni di lettura per Amazon Cognito. Collega la policy AmazonCognitoReadOnly al tuo account.

An error occurred (ValidationException) when calling the CreateDomain operation: OpenSearch Service must be allowed to use the passed role

OpenSearch Service non è specificato nella relazione di trust del ruolo CognitoAccessForAmazonOpenSearch. Controlla se il tuo ruolo utilizza la relazione di attendibilità specificata in Informazioni sul ruolo CognitoAccessForAmazonOpenSearch. In alternativa, per configurare l'autenticazione Amazon Cognito utilizzare la console. La console crea un ruolo per te.

An error occurred (ValidationException) when calling the CreateDomain operation: User is not authorized to perform: cognito-idp:action on resource: user pool

Il ruolo specificato in --cognito-options non ha le autorizzazioni per accedere ad Amazon Cognito. Verificare che al ruolo sia collegata la policy AmazonOpenSearchServiceCognitoAccess gestita da AWS. In alternativa, per configurare l'autenticazione Amazon Cognito utilizzare la console. La console crea un ruolo per te.
An error occurred (ValidationException) when calling the CreateDomain operation: User pool does not exist

OpenSearch Service non è in grado di individuare il bacino d'utenza. Accertati di averne creato uno e di avere l'ID corretto. Per trovare l'ID, è possibile usare la console Amazon Cognito o il seguente comando della AWS CLI:

aws cognito-idp list-user-pools --max-results 60 --region region

An error occurred (ValidationException) when calling the CreateDomain operation: IdentityPool not found

OpenSearch Service non è in grado di individuare il pool di identità. Accertati di averne creato uno e di avere l'ID corretto. Per trovare l'ID, è possibile usare la console Amazon Cognito o il seguente comando della AWS CLI:

aws cognito-identity list-identity-pools --max-results 60 --region region

An error occurred (ValidationException) when calling the CreateDomain operation: Domain needs to be specified for user pool

Il pool di utenti non ha un nome di dominio. È possibile configurarne uno tramite la console Amazon Cognito o con il seguente comando della AWS CLI:
aws cognito-idp create-user-pool-domain --domain name --user-pool-id id
Accesso a OpenSearch Dashboards
Problema Soluzione
La pagina di accesso non mostra i provider di identità preferiti.

Controllare di aver abilitato il provider di identità per il client app OpenSearch Service come specificato in Configurazione dei provider di identità.

La pagina di accesso non sembra associata all'organizzazione.

Consulta (Facoltativo) Personalizzazione della pagina di accesso.

Le credenziali di accesso non funzionano.

Controlla se hai configurato il provider di identità come indicato in Configurazione dei provider di identità.

Se si utilizza il bacino d'utenza come provider di identità, controllare che l'account esista e sia confermato nella pagina Utenti e gruppi della console Amazon Cognito.

OpenSearch Dashboards non carica del tutto o non funziona correttamente.

Il ruolo autenticato con Amazon Cognito deve disporre delle autorizzazioni es:ESHttp* per il dominio (/*) per poter accedere e utilizzare Dashboards. Controlla se hai aggiunto una policy di accesso come indicato in Concessione del ruolo autenticato.

Invalid identity pool configuration. Check assigned IAM roles for this pool. Amazon Cognito non dispone delle autorizzazioni per assumere il ruolo IAM per conto dell'utente autenticato. Modifica la relazione di attendibilità per il ruolo per includere:
{ "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" } } }] }
Token is not from a supported provider of this identity pool. Questo errore poco comune può verificarsi quando rimuovi il client dell’app dal pool di utenti. Provare ad aprire Dashboards in una nuova sessione del browser.

Disabilitazione dell'autenticazione Amazon Cognito per OpenSearch Dashboards

Usa la procedura seguente per disabilitare l'autenticazione Amazon Cognito per Dashboards.

Come disabilitare l'autenticazione Amazon Cognito per Dashboards (console)

  1. Accedi all'indirizzo https://aws.amazon.com e scegli Accedi alla console.

  2. In Analisi, scegli Servizio OpenSearch di Amazon.

  3. Nel pannello di navigazione, scegli il dominio che desideri configurare in Domini.

  4. Scegli Operazioni, quindi Modifica configurazione di sicurezza.

  5. Deseleziona Abilita autenticazione Amazon Cognito.

  6. Sceglie Salva modifiche.

Importante

Se il pool di utenti e il pool di identità di Amazon Cognito non sono più necessari, puoi eliminarli. In caso contrario, potrebbero continuare a esserti addebitati i costi.

Eliminazione di domini che utilizzano l'autenticazione Amazon Cognito per OpenSearch Dashboards

Per impedire che i domini che usano l'autenticazione Amazon Cognito per Dashboards restino bloccati nello stato di configurazione In fase di elaborazione, eliminare i domini OpenSearch Service prima di eliminare i bacini d'utenza e i pool di identità di Amazon Cognito associati.