Concedere alle pipeline OpenSearch di Amazon Ingestion l'accesso ai domini - 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à.

Concedere alle pipeline OpenSearch di Amazon Ingestion l'accesso ai domini

Una pipeline Amazon OpenSearch Ingestion necessita dell'autorizzazione per scrivere nel dominio OpenSearch di servizio configurato come sink. Per fornire l'accesso, configuri un ruolo AWS Identity and Access Management (IAM) con una politica di autorizzazioni restrittiva che limiti l'accesso al dominio a cui una pipeline invia i dati. Ad esempio, potreste voler limitare una pipeline di ingestione solo al dominio e agli indici necessari per supportarne il caso d'uso.

Prima di specificare il ruolo nella configurazione della pipeline, è necessario configurarlo con una relazione di trust appropriata e quindi concedergli l'accesso al dominio nell'ambito della politica di accesso al dominio.

Fase 1: Creare un ruolo nella pipeline

Il ruolo specificato nel parametro sts_role_arn di una configurazione di pipeline deve avere una politica di autorizzazioni associata che gli consenta di inviare dati al sink di dominio. Deve inoltre avere una relazione di fiducia che consenta a Ingestion di assumere il ruolo. OpenSearch Per istruzioni su come allegare una policy a un ruolo, consulta Aggiungere autorizzazioni di IAM identità nella Guida per l'IAMutente.

La seguente policy di esempio mostra il privilegio minimo che è possibile fornire nel ruolo sts_role_arn di una configurazione di pipeline per la scrittura su un singolo dominio:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "es:DescribeDomain", "Resource": "arn:aws:es:*:your-account-id:domain/*" }, { "Effect": "Allow", "Action": "es:ESHttp*", "Resource": "arn:aws:es:*:your-account-id:domain/domain-name/*" } ] }

Se prevedi di riutilizzare il ruolo per scrivere su più domini, puoi rendere la politica più ampia sostituendo il nome di dominio con un carattere jolly (). *

Il ruolo deve avere la seguente relazione di fiducia, che consente a OpenSearch Ingestion di assumere il ruolo di pipeline:

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

Inoltre, ti consigliamo di aggiungere i tasti aws:SourceAccount e aws:SourceArn condition alla policy per proteggerti dal confuso problema del vicedirettore. L'account di origine è il proprietario della pipeline.

Ad esempio, è possibile aggiungere il seguente blocco di condizione alla policy:

"Condition": { "StringEquals": { "aws:SourceAccount": "your-account-id" }, "ArnLike": { "aws:SourceArn": "arn:aws:osis:region:your-account-id:pipeline/*" } }

Fase 2: Includi il ruolo della pipeline nella politica di accesso al dominio

Affinché una pipeline possa scrivere dati su un dominio, il dominio deve disporre di una politica di accesso a livello di dominio che consenta al ruolo della pipeline sts_role_arn di accedervi.

Il seguente esempio di policy di accesso al dominio consente al ruolo pipeline denominatopipeline-role, creato nel passaggio precedente, di scrivere dati nel dominio denominato: ingestion-domain

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

Passaggio 3: mappare il ruolo della pipeline (solo per i domini che utilizzano un controllo di accesso granulare)

Se il tuo dominio utilizza un controllo granulare degli accessi per l'autenticazione, è necessario eseguire ulteriori passaggi per fornire alla pipeline l'accesso a un dominio. I passaggi variano a seconda della configurazione del dominio:

Scenario 1: ruolo principale e ruolo pipeline diversi: se utilizzi un IAM Amazon Resource Name (ARN) come utente principale ed è diverso dal ruolo pipeline (sts_role_arn), devi mappare il ruolo della pipeline al OpenSearch all_access ruolo di backend. Questo essenzialmente aggiunge il ruolo della pipeline come utente principale aggiuntivo. Per ulteriori informazioni, consulta Utenti master aggiuntivi.

Scenario 2: Utente principale nel database utenti interno: se il dominio utilizza un utente principale nel database utenti interno e l'autenticazione HTTP di base per le OpenSearch dashboard, non è possibile passare il nome utente e la password principali direttamente nella configurazione della pipeline. È invece necessario mappare il ruolo della pipeline (sts_role_arn) al ruolo di backend. OpenSearch all_access Ciò aggiunge essenzialmente il ruolo della pipeline come utente principale aggiuntivo. Per ulteriori informazioni, consulta Utenti master aggiuntivi.

Scenario 3: stesso ruolo principale e ruolo della pipeline (non comune): se utilizzi un IAM ARN utente principale ed è lo stesso ARN che utilizzi come ruolo pipeline (sts_role_arn), non devi intraprendere ulteriori azioni. La pipeline dispone delle autorizzazioni necessarie per scrivere nel dominio. Questo scenario è raro perché la maggior parte degli ambienti utilizza un ruolo di amministratore o un altro ruolo come ruolo principale.

L'immagine seguente mostra come mappare il ruolo della pipeline a un ruolo di backend:

Backend roles section showing an AWSIAM role ARN for a pipeline role with a Remove option.

Fase 4: Specificare il ruolo nella configurazione della pipeline

Per creare correttamente una pipeline, è necessario specificare il ruolo della pipeline creato nel passaggio 1 come parametro sts_role_arn nella configurazione della pipeline. La pipeline assume questo ruolo per firmare le richieste al service domain sink. OpenSearch

Nel sts_role_arn campo, specifica il ruolo ARN della IAM pipeline:

version: "2" log-pipeline: source: http: path: "/${pipelineName}/logs" processor: - grok: match: log: [ "%{COMMONAPACHELOG}" ] sink: - opensearch: hosts: [ "https://search-domain-name.us-east-1.es.amazonaws.com" ] index: "my-index" aws: region: "region" sts_role_arn: "arn:aws:iam::your-account-id:role/pipeline-role"

Per un riferimento completo dei parametri obbligatori e non supportati, vedere. Plugin e opzioni supportati per le pipeline di Amazon OpenSearch Ingestion