Identity and Access Management per Amazon OpenSearch Serverless - 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à.

Identity and Access Management per Amazon OpenSearch Serverless

AWS Identity and Access Management (IAM) è un Servizio AWSche consente agli amministratori di controllare in modo sicuro l'accesso alle risorse AWS. Gli amministratori IAM controllano chi può essere autenticato (effettuato l'accesso) e autorizzato (disporre delle autorizzazioni) a utilizzare le risorse Serverless. OpenSearch IAM è un Servizio AWS il cui uso non comporta costi aggiuntivi.

Policy basate sull'identità per Serverless OpenSearch

Supporta le policy basate su identità

Le policy basate su identità sono documenti di policy di autorizzazione JSON che è possibile allegare a un'identità (utente, gruppo di utenti o ruolo IAM). Tali policy definiscono le operazioni che utenti e ruoli possono eseguire, su quali risorse e in quali condizioni. Per informazioni su come creare una policy basata su identità, consulta Creazione di policy IAM nella Guida per l'utente di IAM.

Con le policy basate su identità di IAM, è possibile specificare quali operazioni e risorse sono consentite o respinte, nonché le condizioni in base alle quali le operazioni sono consentite o respinte. Non è possibile specificare l'entità principale in una policy basata sull'identità perché si applica all'utente o al ruolo a cui è associato. Per informazioni su tutti gli elementi utilizzabili in una policy JSON, consulta Guida di riferimento agli elementi delle policy JSON IAM nella Guida per l'utente di IAM.

Esempi di policy basate sull'identità per Serverless OpenSearch

Per visualizzare esempi di policy basate sull'identità OpenSearch serverless, vedere. Esempi di policy basate sull'identità per Serverless OpenSearch

Azioni politiche per Serverless OpenSearch

Supporta le operazioni di policy

L'elemento Action di una policy JSON descrive le operazioni che è possibile utilizzare per consentire o negare l'accesso a un criterio. Le operazioni di policy hanno spesso lo stesso nome dell'operazione API AWS. Ci sono alcune eccezioni, ad esempio le azioni di sola autorizzazione che non hanno un'operazione API corrispondente. Esistono anche alcune operazioni che richiedono più operazioni in una policy. Queste operazioni aggiuntive sono denominate operazioni dipendenti.

Includi le operazioni in una policy per concedere le autorizzazioni a eseguire l'operazione associata.

Le azioni politiche in OpenSearch Serverless utilizzano il seguente prefisso prima dell'azione:

aoss

Per specificare più operazioni in una sola istruzione, occorre separarle con la virgola.

"Action": [ "aoss:action1", "aoss:action2" ]

Puoi specificare più operazioni tramite caratteri jolly (*). Ad esempio, per specificare tutte le operazioni che iniziano con la parola Describe, includi la seguente operazione:

"Action": "aoss:List*"

Per visualizzare esempi di politiche basate sull'identità OpenSearch Serverless, vedere. Esempi di policy basate sull'identità per Serverless OpenSearch

Risorse politiche per Serverless OpenSearch

Supporta le risorse di policy

Gli amministratori possono utilizzare le policy JSON AWSper specificare gli accessi ai diversi elementi. Cioè, quale principale può eseguire operazioni su quali risorse, e in quali condizioni.

L'elemento JSON Resourcedella policy specifica l'oggetto o gli oggetti ai quali si applica l'operazione. Le istruzioni devono includere un elemento Resourceo un elemento NotResource. Come best practice, specifica una risorsa utilizzando il suo nome della risorsa Amazon (ARN). Puoi eseguire questa operazione per azioni che supportano un tipo di risorsa specifico, note come autorizzazioni a livello di risorsa.

Per le azioni che non supportano le autorizzazioni a livello di risorsa, ad esempio le operazioni di elenco, utilizza un carattere jolly (*) per indicare che l'istruzione si applica a tutte le risorse.

"Resource": "*"

Chiavi delle condizioni delle policy per Amazon OpenSearch Serverless

Supporta le chiavi di condizione delle policy specifiche del servizio

Gli amministratori possono utilizzare le policy JSON AWSper specificare gli accessi ai diversi elementi. Cioè, quale principale può eseguire azioni su quali risorse, e in quali condizioni.

L'elemento Condition (o blocco Condition) consente di specificare le condizioni in cui un'istruzione è in vigore. L'elemento Condition è facoltativo. Puoi compilare espressioni condizionali che utilizzano operatori di condizione, ad esempio uguale a o minore di, per soddisfare la condizione nella policy con i valori nella richiesta.

Se specifichi più elementi Condition in un'istruzione o più chiavi in un singolo elemento Condition, questi vengono valutati da AWS utilizzando un'operazione AND logica. Se specifichi più valori per una singola chiave di condizione, AWS valuta la condizione utilizzando un'operazione OR logica. Tutte le condizioni devono essere soddisfatte prima che le autorizzazioni dell'istruzione vengano concesse.

Puoi anche utilizzare variabili segnaposto quando specifichi le condizioni. Ad esempio, puoi autorizzare un utente IAM ad accedere a una risorsa solo se è stata taggata con il relativo nome utente IAM. Per ulteriori informazioni, consulta Elementi delle policy IAM: variabili e tag nella Guida per l'utente di IAM.

AWS supporta chiavi di condizione globali e chiavi di condizione specifiche per il servizio. Per visualizzare tutte le chiavi di condizione globali di AWS, consulta Chiavi di contesto delle condizioni globali di AWS nella Guida per l'utente di IAM.

Oltre al controllo degli accessi basato sugli attributi (ABAC), OpenSearch Serverless supporta le seguenti chiavi di condizione:

  • aoss:collection

  • aoss:CollectionId

  • aoss:index

È possibile utilizzare le chiavi di condizione anche quando si forniscono le autorizzazioni per le policy di accesso e le policy di sicurezza. Per esempio:

[ { "Effect":"Allow", "Action":[ "aoss:CreateAccessPolicy", "aoss:CreateSecurityPolicy" ], "Resource":"*", "Condition":{ "StringLike":{ "aoss:collection":"log" } } } ]

In questo esempio, la condizione si applica alle policy che contengono regole che corrispondono al nome o al modello di una raccolta. Le condizioni hanno il seguente comportamento:

  • StringEquals - Si applica alle policy con regole che contengono la stringa di risorsa esatta "log" (ad esempio, collection/log).

  • StringLike - Si applica alle policy con regole che contengono una stringa di risorsa che include "log" (ad esempio, collection/log ma anche collection/logs-application o collection/applogs123).

Nota

Le chiavi di condizione raccolta non si applicano a livello di indice. Ad esempio, nella policy precedente, la condizione non si applicherebbe ad una policy di accesso o di sicurezza contenente la stringa di risorsa index/logs-application/*.

Per visualizzare un elenco di chiavi di condizione OpenSearch Serverless, consulta Condition keys for Amazon OpenSearch Serverless nel Service Authorization Reference. Per sapere con quali azioni e risorse puoi utilizzare una chiave di condizione, consulta Azioni definite da Amazon OpenSearch Serverless.

ABAC con Serverless OpenSearch

Supporta ABAC (tag nelle policy)

Il controllo dell'accesso basato su attributi (ABAC) è una strategia di autorizzazione che definisce le autorizzazioni in base agli attributi. In AWS, tali attributi sono denominati tag. È possibile collegare dei tag alle entità IAM (utenti o ruoli) e a numerose risorse AWS. L'assegnazione di tag alle entità e alle risorse è il primo passaggio di ABAC. In seguito, vengono progettate policy ABAC per consentire operazioni quando il tag dell'entità principale corrisponde al tag sulla risorsa a cui si sta provando ad accedere.

La strategia ABAC è utile in ambienti soggetti a una rapida crescita e aiuta in situazioni in cui la gestione delle policy diventa impegnativa.

Per controllare l'accesso basato su tag, fornisci informazioni sui tag nell'elemento condizione di una policy utilizzando le chiavi di condizione aws:ResourceTag/key-name, aws:RequestTag/key-nameo aws:TagKeys.

Se un servizio supporta tutte e tre le chiavi di condizione per ogni tipo di risorsa, il valore per il servizio è Yes (Sì). Se un servizio supporta tutte e tre le chiavi di condizione solo per alcuni tipi di risorsa, allora il valore sarà Parziale.

Per ulteriori informazioni su ABAC, consulta Che cos'è ABAC? nella Guida per l'utente di IAM. Per visualizzare un tutorial con i passaggi per l'impostazione di ABAC, consulta Utilizzo del controllo degli accessi basato su attributi (ABAC) nella Guida per l'utente di IAM.

Per ulteriori informazioni sull'etichettatura delle risorse OpenSearch Serverless, vedere. Assegnazione di tag alle raccolte Amazon OpenSearch Serverless

Utilizzo di credenziali temporanee con Serverless OpenSearch

Supporta le credenziali temporanee

Alcuni Servizi AWSnon funzionano quando si accede utilizzando credenziali temporanee. Per ulteriori informazioni, inclusi i Servizi AWS che funzionano con le credenziali temporanee, consulta Servizi AWS supportati da IAM nella Guida per l'utente IAM.

Le credenziali temporanee sono utilizzate se si accede alla AWS Management Consoleutilizzando qualsiasi metodo che non sia la combinazione di nome utente e password. Ad esempio, quando accedi ad AWS utilizzando il collegamento Single Sign-On (SSO) della tua azienda, tale processo crea in automatico credenziali temporanee. Le credenziali temporanee vengono create in automatico anche quando accedi alla console come utente e poi cambi ruolo. Per ulteriori informazioni sullo scambio dei ruoli, consulta Cambio di un ruolo (console) nella Guida per l'utente di IAM.

È possibile creare manualmente credenziali temporanee utilizzando la AWS CLIo l'API AWS. È quindi possibile utilizzare tali credenziali temporanee per accedere ad AWS. AWSconsiglia di generare le credenziali temporanee dinamicamente anziché utilizzare chiavi di accesso a lungo termine. Per ulteriori informazioni, consulta Credenziali di sicurezza provvisorie in IAM.

Ruoli collegati ai servizi per Serverless OpenSearch

Supporta i ruoli collegati ai servizi

Un ruolo collegato ai servizi è un tipo di ruolo di servizio che è collegato a un Servizio AWS. Il servizio può assumere il ruolo per eseguire un'operazione per tuo conto. I ruoli collegati ai servizi sono visualizzati nell'account Account AWSe sono di proprietà del servizio. Un amministratore IAM può visualizzare le autorizzazioni per i ruoli collegati ai servizi, ma non modificarle.

Per informazioni dettagliate sulla creazione e la gestione di ruoli OpenSearch Serverless collegati ai servizi, consulta. Utilizzo di ruoli collegati ai servizi per creare raccolte Serverless OpenSearch

Esempi di policy basate sull'identità per Serverless OpenSearch

Per impostazione predefinita, gli utenti e i ruoli non dispongono dell'autorizzazione per creare o modificare risorse Serverless. OpenSearch Inoltre, non sono in grado di eseguire attività utilizzando la AWS Management Console, l'AWS Command Line Interface (AWS CLI) o l'API AWS. Per concedere agli utenti l'autorizzazione per eseguire operazioni sulle risorse di cui hanno bisogno, un amministratore IAM può creare policy IAM. L'amministratore può quindi aggiungere le policy IAM ai ruoli e gli utenti possono assumere i ruoli.

Per informazioni su come creare una policy basata su identità IAM utilizzando questi documenti di policy JSON di esempio, consulta Creazione di policy IAM nella Guida per l'utente di IAM.

Per dettagli sulle azioni e sui tipi di risorse definiti da Amazon OpenSearch Serverless, incluso il formato degli ARN per ciascun tipo di risorsa, consulta Azioni, risorse e chiavi di condizione per Amazon OpenSearch Serverless nel Service Authorization Reference.

Best practice per le policy

Le policy basate su identità sono molto efficaci. Determinano se qualcuno può creare, accedere o eliminare risorse OpenSearch Serverless nel tuo account. Queste operazioni possono comportare costi aggiuntivi per l'Account AWS. Quando crei o modifichi policy basate su identità, segui queste linee guida e raccomandazioni:

Le politiche basate sull'identità determinano se qualcuno può creare, accedere o eliminare risorse OpenSearch Serverless nel tuo account. Queste operazioni possono comportare costi aggiuntivi per l'Account AWS. Quando crei o modifichi policy basate su identità, segui queste linee guida e raccomandazioni:

  • Nozioni di base sulle policy gestite da AWSe passaggio alle autorizzazioni con privilegio minimo: per le informazioni di base su come concedere autorizzazioni a utenti e carichi di lavoro, utilizza le policy gestite da AWSche concedono le autorizzazioni per molti casi d'uso comuni. Sono disponibili nel tuo Account AWS. Ti consigliamo pertanto di ridurre ulteriormente le autorizzazioni definendo policy gestite dal cliente di AWSspecifiche per i tuoi casi d'uso. Per ulteriori informazioni, consulta Policy gestite da AWS o Policy gestite da AWS per le funzioni dei processi nella Guida per l'utente IAM.

  • Applica le autorizzazioni con privilegi minimi: quando imposti le autorizzazioni con le policy IAM, concedi solo le autorizzazioni richieste per eseguire un'attività. Puoi farlo definendo le azioni che possono essere intraprese su risorse specifiche in condizioni specifiche, note anche come autorizzazioni con privilegi minimi. Per ulteriori informazioni sull'utilizzo di IAM per applicare le autorizzazioni, consulta Policy e autorizzazioni in IAM nella Guida per l'utente di IAM.

  • Condizioni d'uso nelle policy IAM per limitare ulteriormente l'accesso: per limitare l'accesso a operazioni e risorse puoi aggiungere una condizione alle tue policy. Ad esempio, è possibile scrivere una condizione di policy per specificare che tutte le richieste devono essere inviate utilizzando SSL. Puoi inoltre utilizzare le condizioni per concedere l'accesso alle operazioni di servizio, ma solo se vengono utilizzate tramite uno specifico Servizio AWS, ad esempio AWS CloudFormation. Per ulteriori informazioni, consulta la sezione Elementi delle policy JSON di IAM: condizione nella Guida per l'utente di IAM.

  • Utilizzo di IAM Access Analyzer per convalidare le policy IAM e garantire autorizzazioni sicure e funzionali: IAM Access Analyzer convalida le policy nuove ed esistenti in modo che aderiscano al linguaggio della policy IAM (JSON) e alle best practice di IAM. IAM Access Analyzer offre oltre 100 controlli delle policy e consigli utili per creare policy sicure e funzionali. Per ulteriori informazioni, consulta Convalida delle policy per IAM Access Analyzer nella Guida per l'utente di IAM.

  • Richiesta dell'autenticazione a più fattori (MFA): se hai uno scenario che richiede utenti IAM o utenti root nel tuo Account AWS, attiva MFA per una maggiore sicurezza. Per richiedere la MFA quando vengono chiamate le operazioni API, aggiungi le condizioni MFA alle policy. Per ulteriori informazioni, consulta Configurazione dell'accesso alle API protetto con MFA nella Guida per l'utente di IAM.

Per maggiori informazioni sulle best practice in IAM, consulta Best practice di sicurezza in IAM nella Guida per l'utente di IAM.

Utilizzo di Serverless OpenSearch nella console

Per accedere a OpenSearch Serverless dalla console OpenSearch di servizio, è necessario disporre di un set minimo di autorizzazioni. Queste autorizzazioni devono consentirti di elencare e visualizzare i dettagli sulle risorse OpenSearch Serverless presenti nel tuo account. AWS Se crei una policy basata su identità più restrittiva rispetto alle autorizzazioni minime richieste, la console non funzionerà nel modo previsto per le entità (come i ruoli IAM) associate a tale policy.

Non sono necessarie le autorizzazioni minime della console per gli utenti che effettuano chiamate solo alla AWS CLIo all'API AWS. Al contrario, è possibile accedere solo alle operazioni che soddisfano l'operazione API che si sta cercando di eseguire.

La seguente politica consente a un utente di accedere a OpenSearch Serverless dalla console di servizio: OpenSearch

{ "Version": "2012-10-17", "Statement": [ { "Resource": "*", "Effect": "Allow", "Action": [ "aoss:ListCollections", "aoss:BatchGetCollection", "aoss:ListAccessPolicies", "aoss:ListSecurityConfigs", "aoss:ListSecurityPolicies", "aoss:ListTagsForResource", "aoss:ListVpcEndpoints", "aoss:GetAccessPolicy", "aoss:GetAccountSettings", "aoss:GetSecurityConfig", "aoss:GetSecurityPolicy" ] } ] }

Amministrazione delle raccolte Serverless OpenSearch

Questa policy è un esempio di policy «collection admin» che consente a un utente di gestire e amministrare raccolte Amazon OpenSearch Serverless. L'utente può creare, visualizzare ed eliminare le raccolte.

{ "Version": "2012-10-17", "Statement": [ { "Resource": "arn:aws:aoss:region:123456789012:collection/*", "Action": [ "aoss:CreateCollection", "aoss:DeleteCollection", "aoss:UpdateCollection" ], "Effect": "Allow" }, { "Resource": "*", "Action": [ "aoss:BatchGetCollection", "aoss:ListCollections", "aoss:CreateAccessPolicy", "aoss:CreateSecurityPolicy" ], "Effect": "Allow" } ] }

Visualizzazione delle raccolte Serverless OpenSearch

Questa policy di esempio consente a un utente di visualizzare i dettagli di tutte le raccolte Amazon OpenSearch Serverless nel proprio account. L'utente non può modificare le raccolte o le policy di sicurezza associate.

{ "Version": "2012-10-17", "Statement": [ { "Resource": "*", "Action": [ "aoss:ListAccessPolicies", "aoss:ListCollections", "aoss:ListSecurityPolicies", "aoss:ListTagsForResource", "aoss:BatchGetCollection" ], "Effect": "Allow" } ] }

Utilizzo delle operazioni OpenSearch API

Le operazioni API del piano dati sono costituite dalle funzioni utilizzate in OpenSearch Serverless per ricavare valore in tempo reale dal servizio. Le operazioni API del piano di controllo sono costituite dalle funzioni utilizzate per configurare l'ambiente.

Per accedere alle API e ai OpenSearch dashboard del piano dati di Amazon OpenSearch Serverless dal browser, devi aggiungere due autorizzazioni IAM per le risorse di raccolta. Queste autorizzazioni sono e. aoss:APIAccessAll aoss:DashboardsAccessAll

Nota

A partire dal 10 maggio 2023, OpenSearch Serverless richiede queste due nuove autorizzazioni IAM per le risorse di raccolta. L'aoss:APIAccessAllautorizzazione consente l'accesso al piano dati e l'aoss:DashboardsAccessAllautorizzazione consente l'accesso alle OpenSearch dashboard dal browser. La mancata aggiunta delle due nuove autorizzazioni IAM genera un errore 403.

Questa policy di esempio consente a un utente di accedere alle API del piano dati per una raccolta specifica nel proprio account e di accedere alle OpenSearch dashboard per tutte le raccolte nel proprio account.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "aoss:APIAccessAll", "Resource": "arn:aws:aoss:region:account-id:collection/collection-id" }, { "Effect": "Allow", "Action": "aoss:DashboardsAccessAll", "Resource": "arn:aws:aoss:region:account-id:dashboards/default" } ] }

Entrambi aoss:APIAccessAll aoss:DashboardsAccessAll concedono l'autorizzazione IAM completa alle risorse di raccolta, mentre l'autorizzazione Dashboards fornisce OpenSearch anche l'accesso alle dashboard. Ogni autorizzazione funziona in modo indipendente, quindi una negazione esplicita aoss:APIAccessAll non blocca aoss:DashboardsAccessAll l'accesso alle risorse, inclusi Dev Tools. Lo stesso vale per una negazione dell'accesso. aoss:DashboardsAccessAll

OpenSearch Serverless supporta l'indirizzo IP di origine solo nelle condizioni impostate nella politica IAM del principale per le chiamate sul piano dati:

"Condition": { "IpAddress": { "aws:SourceIp": "52.95.4.14" } }