View a markdown version of this page

Tutorial: Configurare un dominio con il database utente interno e l'autenticazione di base HTTP - OpenSearch Servizio Amazon

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/e crea un dominio con le seguenti impostazioni:

  • 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:

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action": [ "es:ESHttp*" ], "Resource": "arn:aws:es:us-east-1:111122223333:domain/{domain-name}/*" } ] }
  • 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.

  1. 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/.

  2. Accedi con. TheMasterUser

  3. Scegliere Add sample data (Aggiungi dati di esempio) e aggiungere alcuni dati di volo di esempio.

  4. Nel riquadro di navigazione a sinistra, scegli Sicurezza, Utenti interni, Crea utente interno.

  5. Denominare l'utente new-user e 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.

  1. Resta nella sezione Sicurezza delle OpenSearch dashboard e scegli Ruoli, Crea ruolo.

  2. Denomina il ruolo new-role.

  3. Per Index, specifica opensearch_dashboards_sample_data_fli* (kibana_sample_data_fli*sui domini Elasticsearch) il modello di indice.

  4. Per il gruppo di operazioni, scegliere read.

  5. Per Sicurezza a livello di documento, specificare la seguente query:

    { "match": { "FlightDelay": true } }
  6. Per la sicurezza a livello di campo, scegliere Escludi e specificare FlightNum.

  7. Per Anonimizzazione, specificare Dest.

  8. Scegliere Create (Crea) .

  9. Scegliere Utenti mappati, Gestisci mappatura. Quindi aggiungere new-user a Utenti e scegliere Mappa.

Passaggio 4: Verifica le autorizzazioni

Quando i ruoli sono mappati correttamente, puoi accedere come utente limitato e testare le autorizzazioni.

  1. In una nuova finestra privata del browser, vai all'URL della OpenSearch dashboard per il dominio, accedi utilizzando le new-user credenziali e scegli Esplora da solo.

  2. Scegliere Strumenti di sviluppo ed eseguire la ricerca predefinita:

    GET _search { "query": { "match_all": {} } }

    Notare l'errore di autorizzazioni. new-user non dispone delle autorizzazioni per eseguire ricerche a livello di cluster.

  3. Esegui un'altra ricerca:

    GET dashboards_sample_data_flights/_search { "query": { "match_all": {} } }

    Si noti che tutti i documenti corrispondenti hanno un campo FlightDelay di true, un campo Dest anonimizzato e nessun campo FlightNum.

  4. 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.