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à.
Tutorial: Configurare un dominio con il database utente interno e l'autenticazione di base HTTP
Questo tutorial tratta un altro popolare caso d'uso del controllo granulare degli accessi: un utente principale nel database utenti interno e l'autenticazione di base HTTP per le dashboard. OpenSearch L'utente master può quindi accedere alle OpenSearch dashboard, creare un utente interno, mappare l'utente a un ruolo e utilizzare un controllo granulare degli accessi per limitare le autorizzazioni dell'utente.
Nota
Quando si utilizza l'autenticazione di base HTTP con una politica di accesso basata sulle risorse che specifica un principale IAM, le richieste non firmate autenticate tramite HTTP Basic Auth vengono gestite esclusivamente dal database utente interno per il controllo degli accessi a grana fine. Le richieste firmate (utilizzando SigV4) vengono valutate in base sia alla policy di accesso al dominio che al controllo granulare degli accessi. Se la politica di accesso specifica un principio, ad esempio"AWS": "arn:aws:iam::111122223333:root", solo le SigV4-signed richieste provenienti da quell'account saranno consentite dalla politica di accesso, mentre le richieste HTTP Basic Auth aggirano la politica di accesso e sono controllate interamente da ruoli di controllo degli accessi dettagliati.
In questo tutorial completerai le seguenti fasi:
Fase 1: Creazione di un dominio
Accedi alla console di Amazon OpenSearch Service all'indirizzo https://console.aws.amazon.com/aos/home/
-
OpenSearch 1.0 o versione successiva oppure Elasticsearch 7.9 o versione successiva
-
Accesso pubblico
-
Fine-grained controllo degli accessi con un utente principale nel database utenti interno (
TheMasterUserper il resto di questo tutorial) -
Autenticazione Amazon Cognito per Dashboards disabilitata
-
La seguente policy di accesso:
-
HTTPS richiesto per tutto il traffico verso il dominio
-
Node-to-node crittografia
-
Crittografia dei dati a riposo
Fase 2: Creare un utente interno nei OpenSearch pannelli di controllo
Ora che hai un dominio, puoi accedere alle OpenSearch dashboard e creare un utente interno.
-
Torna alla console di OpenSearch servizio e vai all'URL delle OpenSearch dashboard per il dominio che hai creato. L'URL segue il seguente formato:
.domain-endpoint/_dashboards/ -
Accedi con.
TheMasterUser -
Scegliere Add sample data (Aggiungi dati di esempio) e aggiungere alcuni dati di volo di esempio.
-
Nel riquadro di navigazione a sinistra, scegli Sicurezza, Utenti interni, Crea utente interno.
-
Denominare l'utente
new-usere specificare una password. Quindi, scegli Create (Crea).
Fase 3: Mappa i ruoli nelle OpenSearch dashboard
Ora che l'utente è configurato, puoi mappare l'utente a un ruolo.
-
Resta nella sezione Sicurezza delle OpenSearch dashboard e scegli Ruoli, Crea ruolo.
-
Denomina il ruolo
new-role. -
Per Index, specifica
opensearch_dashboards_sample_data_fli*(kibana_sample_data_fli*sui domini Elasticsearch) il modello di indice. -
Per il gruppo di operazioni, scegliere read.
-
Per Sicurezza a livello di documento, specificare la seguente query:
{ "match": { "FlightDelay": true } } -
Per la sicurezza a livello di campo, scegliere Escludi e specificare
FlightNum. -
Per Anonimizzazione, specificare
Dest. -
Scegliere Create (Crea) .
-
Scegliere Utenti mappati, Gestisci mappatura. Quindi aggiungere
new-usera Utenti e scegliere Mappa.
Passaggio 4: Verifica le autorizzazioni
Quando i ruoli sono mappati correttamente, puoi accedere come utente limitato e testare le autorizzazioni.
-
In una nuova finestra privata del browser, vai all'URL della OpenSearch dashboard per il dominio, accedi utilizzando le
new-usercredenziali e scegli Esplora da solo. -
Scegliere Strumenti di sviluppo ed eseguire la ricerca predefinita:
GET _search { "query": { "match_all": {} } }Notare l'errore di autorizzazioni.
new-usernon dispone delle autorizzazioni per eseguire ricerche a livello di cluster. -
Esegui un'altra ricerca:
GET dashboards_sample_data_flights/_search { "query": { "match_all": {} } }Si noti che tutti i documenti corrispondenti hanno un campo
FlightDelayditrue, un campoDestanonimizzato e nessun campoFlightNum. -
Nella finestra del browser originale, accedere come
TheMasterUser, scegliere Strumenti di sviluppo ed eseguire le stesse ricerche. Nota la differenza tra autorizzazioni, numero di hit, documenti corrispondenti e campi inclusi.