Complete a 3 Question Survey and Earn a re:Post Badge
Help improve AWS Support Official channel in re:Post and share your experience - complete a quick three-question survey to earn a re:Post badge!
Come posso utilizzare un tunnel SSH per accedere a OpenSearch Dashboards con l'autenticazione di Amazon Cognito dall'esterno di un VPC?
Il mio dominio del Servizio OpenSearch di Amazon si trova in un cloud privato virtuale (VPC). Desidero utilizzare un tunnel SSH per accedere a OpenSearch Dashboards con l'autenticazione di Amazon Cognito dall'esterno del VPC.
Breve descrizione
Per impostazione predefinita, Amazon Cognito limita l'accesso di OpenSearch Dashboards agli utenti di AWS Identity and Access Management (IAM) nel VPC. Per accedere a un dominio del Servizio OpenSearch da un altro VPC, crea un endpoint VPC di interfaccia per il Servizio OpenSearch. Per accedere pubblicamente all'URL di una dashboard, utilizza un tunnel SSH.
Importante: verifica che l'accesso a OpenSearch Dashboards dall'esterno del VPC sia conforme ai requisiti di sicurezza dell'organizzazione.
Per utilizzare un tunnel SSH per accedere a OpenSearch Dashboards dall'esterno del VPC, completa i seguenti passaggi:
- Crea un pool di utenti e un pool di identità Amazon Cognito.
- Crea un'istanza Amazon Elastic Compute Cloud (Amazon EC2) in una sottorete pubblica.
- Utilizza un componente aggiuntivo del browser per configurare un proxy SOCKS.
- Crea un tunnel SSH dal computer locale all'istanza EC2.
Nota: per accedere a OpenSearch Dashboards dall'esterno di un VPC con l'autenticazione di Amazon Cognito, puoi anche utilizzare un proxy NGINX o una VPN client. - (Facoltativo) Se attivi il controllo granulare degli accessi, aggiungi un ruolo autenticato da Amazon Cognito.
Risoluzione
Crea un pool di utenti e un pool di identità Amazon Cognito
Completa i seguenti passaggi:
- Crea un pool di utenti Amazon Cognito. Configura le seguenti impostazioni:
Per Tipo di applicazione, scegli Applicazione Web tradizionale.
In Assegna un nome all'applicazione, inserisci un nome personalizzato o mantieni il nome predefinito.
Per Opzioni per gli identificativi di accesso, scegli Nome utente.
Per Attributi richiesti per l'accesso, scegli E-mail. - Apri la console Amazon Cognito.
- Nel pannello di navigazione, scegli Pool di utenti.
- Seleziona il Pool di utenti.
- Nel pannello di navigazione, in Branding, scegli Accesso gestito. Configura le seguenti impostazioni:
Per Domains with managed login branding (Domini con branding accesso gestito), scegli Aggiorna versione.
Per Versione del branding, scegli Interfaccia utente ospitata (classica). - Configura utenti e gruppi.
- Crea un pool di identità Amazon Cognito. Configura le seguenti impostazioni:
Per Accesso utente, scegli Accesso autenticato.
In Origini di identità autenticate, inserisci Pool di utenti Amazon Cognito.
Per Ruolo IAM, scegli Crea un nuovo ruolo IAM, quindi inserisci un nome per il ruolo.
Per Dettagli del pool di utenti, seleziona il pool di utenti, quindi scegli ID del client dell'app.
Per Impostazioni ruolo, scegli Utilizza ruolo autenticato predefinito.
Per Mappatura delle richieste, scegli Inattiva. - Configura il dominio del Servizio OpenSearch per utilizzare l'autenticazione di Amazon Cognito. Configura le seguenti impostazioni:
Per Pool di utenti Cognito, seleziona il pool di utenti.
Per Cognito Identity Pool (Pool di identità Cognito), seleziona il pool di identità. - In Policy di accesso al dominio, inserisci la seguente policy:
Nota: sostituisci account-id con il tuo account AWS e identitypool-role con il nome del ruolo del tuo pool di identità. Sostituisci domain-namecon il tuo dominio del Servizio OpenSearch e region con la Regione AWS del tuo dominio.{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::account-id:role/service-role/identitypool-role" }, "Action": "es:*", "Resource": "arn:aws:es:region:account-id:domain/domain-name/*" } ] }
Crea un'istanza EC2 e configura le regole del gruppo di sicurezza
Importante: la sottorete dell'istanza deve trovarsi nello stesso VPC del dominio del Servizio OpenSearch.
Completa i seguenti passaggi:
- Avvia un'istanza nella sottorete pubblica del VPC in cui si trova il dominio del Servizio OpenSearch.
- Nella pagina Configura i dettagli dell'istanza, verifica che l'opzione Assegna automaticamente IP pubblico sia impostata su Abilita.
- Aggiungi regole in entrata al gruppo di sicurezza associato all'istanza. Consenti il traffico verso le porte 8157 e 22 dall'indirizzo IP del computer locale.
- Aggiungi una regola in entrata al gruppo di sicurezza associato al dominio del Servizio OpenSearch. Consenti il traffico proveniente dall'indirizzo IP privato dell'istanza.
Configura il proxy SOCKS
Nota: le seguenti istruzioni utilizzano FoxyProxy per configurare il proxy SOCKS. Per installare l'estensione, scarica FoxyProxy da Chrome Web Store.
Completa i seguenti passaggi:
- Apri FoxyProxy, quindi scegli Options (Opzioni).
- In Proxies (Proxy), scegli Add (Aggiungi).
- Configura le seguenti impostazioni:
In Title (Titolo), inserisci un nome per il proxy.
In Hostname, inserisci localhost.
In Port (Porta), inserisci 8157.
Per Type (Tipo), seleziona SOCKS5. - Per aggiungere un modello, scegli il segno più (+), quindi configura le seguenti impostazioni:
Lascia vuoto il primo campo.
In Title (Titolo), inserisci un nome per la sequenza.
In Pattern (Modello), inserisci l'endpoint VPC di OpenSearch Dashboards, ad esempio: https://vpc-mydomain-rg3abcdefghiflge.us-east-1.es.amazonaws.com/_dashboards.
Per Type (Tipo), scegli Wildcards (Caratteri jolly).
Per Include (Includi), scegli Include (Includi). - Scegli Save (Salva).
Crea il tunnel SSH
Completa i seguenti passaggi:
-
Utilizza il computer locale con cui accedi a OpenSearch Dashboards per eseguire questo comando:
ssh -i "mykeypair.pem" ec2-user@public_dns_name -ND 8157
Nota: sostituisci mykeypair.pem con il nome del file .pem per la coppia di chiavi specificata all'avvio dell'istanza. Sostituisci public_dns_name on il DNS pubblico dell'istanza. Per ulteriori informazioni, consulta Attributi DNS per il VPC.
-
Inserisci l'endpoint OpenSearch Dashboards nel browser per aprire la pagina di accesso di Amazon Cognito per OpenSearch Dashboards.
(Facoltativo) Se attivi i controlli di accesso granulari, aggiungi un ruolo del pool di identità Amazon Cognito
Se attivi il controllo granulare degli accessi per il cluster del Servizio OpenSearch, potresti ricevere un errore di ruolo mancante.
Per risolvere l'errore di ruolo mancante, completa i seguenti passaggi:
- Apri la console del Servizio OpenSearch.
- Dal pannello di navigazione, in Cluster gestiti, scegli Domini.
- Seleziona il dominio, quindi scegli Operazioni.
- Scegli Edit security configurations ( Modifica configurazioni di sicurezza).
- Scegli Set IAM ARN as your master user (Imposta l'ARN IAM come utente principale).
- In ARN IAM, inserisci l'ARN del ruolo del pool di identità di Amazon Cognito.
- Scegli Salva.
Per ulteriori informazioni sul controllo granulare degli accessi, consulta Tutorial: configurazione di un dominio con un utente master IAM e autenticazione Amazon Cognito.
Informazioni correlate
Configurazione dell'autenticazione Amazon Cognito per OpenSearch Dashboards
Avvio dei domini del Servizio OpenSearch di Amazon all'interno di un VPC
