Panoramica della gestione delle autorizzazioni di accesso alle risorse di Amazon Redshift - Amazon Redshift

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

Panoramica della gestione delle autorizzazioni di accesso alle risorse di Amazon Redshift

Ogni AWS risorsa è di proprietà di un AWS account e le autorizzazioni per creare o accedere alle risorse sono regolate da politiche di autorizzazione. Un amministratore di account può associare criteri di autorizzazione alle IAM identità (ovvero utenti, gruppi e ruoli) e alcuni servizi (come AWS Lambda) supportano anche l'associazione di politiche di autorizzazione alle risorse.

Nota

Un amministratore account (o un utente amministratore) è un utente con privilegi di amministratore. Per ulteriori informazioni, consulta le IAMbest practice nella Guida per l'utente. IAM

Nel concedere le autorizzazioni, devi stabilire chi ottiene le autorizzazioni, per quali risorse concedere le autorizzazioni e le operazioni specifiche che vuoi permettere su tali risorse.

Risorse e operazioni di Amazon Redshift

Amazon Redshift fornisce risorse, azioni e chiavi di contesto delle condizioni specifiche del servizio da utilizzare nelle politiche di autorizzazione. IAM

Autorizzazioni di accesso per Amazon Redshift, Amazon Redshift Serverless, Amazon Redshift API Data e Amazon Redshift Query Editor v2

Durante la configurazioneControllo accessi, scrivi politiche di autorizzazione che puoi allegare a un'IAMidentità (politiche basate sull'identità). Per ulteriori informazioni, consultare gli argomenti seguenti nella Referenza sull'autorizzazione del servizio:

Il Service Authorization Reference contiene informazioni su quali API operazioni possono essere utilizzate in una policy. IAM Include anche la AWS risorsa per la quale è possibile concedere le autorizzazioni e le chiavi di condizione che è possibile includere per un controllo granulare degli accessi. Per ulteriori informazioni sulle condizioni, consulta Utilizzo di condizioni IAM politiche per un controllo granulare degli accessi.

Le operazioni, il valore della risorsa e le condizioni vengono specificati rispettivamente nei campi Action, Resource e Condition della policy. Per specificare un'azione per Amazon Redshift, utilizza il redshift: prefisso seguito dal nome dell'APIoperazione (ad esempio,). redshift:CreateCluster

Informazioni sulla proprietà delle risorse

Il proprietario di una risorsa è l' AWS account che ha creato una risorsa. In altre parole, il proprietario della risorsa è l' AWS account dell'entità principale (l'account root, un IAM utente o un IAM ruolo) che autentica la richiesta che crea la risorsa. Negli esempi seguenti viene illustrato il funzionamento:

  • Se utilizzi le credenziali dell'account root del tuo AWS account per creare un cluster DB, l' AWS account è il proprietario della risorsa Amazon Redshift.

  • Se crei un IAM ruolo nel tuo AWS account con le autorizzazioni per creare risorse Amazon Redshift, chiunque possa assumere il ruolo può creare risorse Amazon Redshift. L'account AWS a cui appartiene il ruolo è il proprietario delle risorse Amazon Redshift.

  • Se crei un IAM utente nel tuo AWS account e concedi le autorizzazioni per creare risorse Amazon Redshift a quell'utente, l'utente può creare risorse Amazon Redshift. Tuttavia, l'account AWS a cui appartiene l'utente è il proprietario delle risorse Amazon Redshift. Nella maggior parte dei casi questo metodo non è consigliato. Ti consigliamo di creare un IAM ruolo e assegnare autorizzazioni al ruolo, quindi assegnare il ruolo a un utente.

Gestione dell'accesso alle risorse

La policy delle autorizzazioni descrive chi ha accesso a cosa. Nella sezione seguente vengono descritte le opzioni disponibili per la creazione di policy relative alle autorizzazioni.

Nota

Questa sezione illustra l'utilizzo IAM nel contesto di Amazon Redshift. Non fornisce informazioni dettagliate sul servizio. IAM Per la IAM documentazione completa, vedi Cos'èIAM? nella Guida IAM per l'utente. Per informazioni sulla sintassi e le descrizioni delle IAM politiche, vedere il riferimento alle AWS IAM politiche nella Guida per l'IAMutente.

Le politiche associate a un'IAMidentità vengono definite politiche basate sull'identità (politiche) e le IAM politiche allegate a una risorsa sono denominate politiche basate sulle risorse. Amazon Redshift supporta solo policy (policy) basate sull'identità. IAM

Politiche (politiche) basate sull'identità IAM

È possibile assegnare autorizzazioni allegando criteri a un IAM ruolo e quindi assegnando tale ruolo a un utente o a un gruppo. Di seguito è riportata una policy di esempio contenente le autorizzazioni per creare, eliminare, modificare e riavviare i cluster Amazon Redshift per l'account AWS .

{ "Version": "2012-10-17", "Statement": [ { "Sid":"AllowManageClusters", "Effect":"Allow", "Action": [ "redshift:CreateCluster", "redshift:DeleteCluster", "redshift:ModifyCluster", "redshift:RebootCluster" ], "Resource":"*" } ] }

Per ulteriori informazioni sull'uso di policy basate su identità con Amazon Redshift, consultare Utilizzo di politiche (IAMpolitiche) basate sull'identità per Amazon Redshift. Per ulteriori informazioni su utenti, gruppi, ruoli e autorizzazioni, consulta Identità (utenti, gruppi e ruoli) nella Guida per l'utente. IAM

Policy basate su risorse

Anche altri servizi, ad esempio Amazon S3, supportano policy di autorizzazioni basate su risorse. Ad esempio, è possibile associare una policy a un bucket S3 per gestire le autorizzazioni di accesso a quel bucket. Amazon Redshift non supporta le policy basate su risorse.

Specifica degli elementi delle policy: operazioni, effetti, risorse ed entità

Per ogni risorsa Amazon Redshift (vediRisorse e operazioni di Amazon Redshift), il servizio definisce una serie di API operazioni (vedi Azioni). Per concedere le autorizzazioni per queste API operazioni, Amazon Redshift definisce una serie di azioni che puoi specificare in una policy. L'esecuzione di un'APIoperazione può richiedere autorizzazioni per più di un'azione.

Di seguito sono elencati gli elementi di base di una policy:

  • Risorsa: in una policy, utilizzi un Amazon Resource Name (ARN) per identificare la risorsa a cui si applica la policy. Per ulteriori informazioni, consulta Risorse e operazioni di Amazon Redshift.

  • Operazione: utilizzi le parole chiave per identificare le operazioni sulla risorsa da permettere o rifiutare. Ad esempio, l'autorizzazione redshift:DescribeClusters concede all'utente le autorizzazioni per eseguire l'operazione DescribeClusters di Amazon Redshift.

  • Effetto: l'effetto prodotto quando l'utente richiede l'operazione specifica, ovvero un'autorizzazione o un rifiuto. USe non concedi esplicitamente (consenti) l'accesso a una risorsa, l'accesso viene implicitamente rifiutato. Puoi anche rifiutare esplicitamente l'accesso a una risorsa per garantire che un utente non possa accedervi, anche se l'accesso viene concesso da un'altra policy.

  • Principal: nelle politiche basate sull'identità (IAMpolicy), l'utente a cui è associata la policy è il principale implicito. Per policy basate su risorse, specifichi l'utente, l'account, il servizio o un'altra entità che desideri riceva le autorizzazioni (si applica solo alle policy basate su risorse). Amazon Redshift non supporta le policy basate su risorse.

Per ulteriori informazioni sulla sintassi e sulle descrizioni delle IAM politiche, consulta il riferimento alle AWS IAM politiche nella Guida per l'utente. IAM

Per una tabella che mostra tutte le API azioni di Amazon Redshift e le risorse a cui si applicano, consulta. Autorizzazioni di accesso per Amazon Redshift, Amazon Redshift Serverless, Amazon Redshift API Data e Amazon Redshift Query Editor v2

Specifica delle condizioni in una policy

Quando concedi le autorizzazioni, puoi utilizzare la sintassi della policy di accesso per specificare le condizioni in base a cui la policy deve essere applicata. Ad esempio, potresti decidere che una policy venga applicata solo dopo una data specifica. Per ulteriori informazioni sulla specificazione delle condizioni in un linguaggio di policy di accesso, consulta Elementi IAM JSON della policy: Condition in the IAMUser Guide.

Per identificare le condizioni in cui si applica una politica di autorizzazioni, includi un Condition elemento nella politica di IAM autorizzazione. Ad esempio, puoi creare una policy che permette a un utente di creare un cluster tramite l'operazione redshift:CreateCluster e puoi aggiungere un elemento Condition per limitare la creazione del cluster da parte dell'utente a una sola regione specifica. Per informazioni dettagliate, consultare Utilizzo di condizioni IAM politiche per un controllo granulare degli accessi. Per un elenco che mostra tutti i valori delle chiavi di condizione e le operazioni e le risorse di Amazon Redshift a cui si applicano, consultare Autorizzazioni di accesso per Amazon Redshift, Amazon Redshift Serverless, Amazon Redshift API Data e Amazon Redshift Query Editor v2.

Utilizzo di condizioni IAM politiche per un controllo granulare degli accessi

In Amazon Redshift puoi usare chiavi di condizione per limitare l'accesso alle risorse in base ai tag per queste risorse. Di seguito sono riportate le chiavi di condizione di Amazon Redshift più comuni.

Chiave di condizione Descrizione

aws:RequestTag

Richiede che gli utenti includano la chiave (nome) e il valore di un tag ogni volta che creano una risorsa. Per ulteriori informazioni, consulta aws: RequestTag nella Guida per l'IAMutente.

aws:ResourceTag

Limita l'accesso utente alle risorse in base a chiavi e valori di tag specifici. Per ulteriori informazioni, consulta aws: ResourceTag nella Guida IAM per l'utente.

aws:TagKeys

Utilizzare questa chiave per confrontare le chiavi dei tag in una richiesta con quelle specificate nella policy. Per ulteriori informazioni, consulta aws: TagKeys nella Guida IAM per l'utente.

Per informazioni sui tag, consultare Tagga le risorse in Amazon Redshift.

Per un elenco delle API azioni che supportano i tasti redshift:RequestTag e redshift:ResourceTag condition, consultaAutorizzazioni di accesso per Amazon Redshift, Amazon Redshift Serverless, Amazon Redshift API Data e Amazon Redshift Query Editor v2.

Le seguenti chiavi di condizione possono essere utilizzate con l'azione Amazon Redshift GetClusterCredentials.

Chiave di condizione Descrizione

redshift:DurationSeconds

Limita il numero di secondi che possono essere specificati per la durata.

redshift:DbName

Limita i nomi di database che possono essere specificati.

redshift:DbUser

Limita i nomi degli utenti del database che possono essere specificati.

Esempio 1: limitazione dell'accesso utilizzando la chiave aws: condition ResourceTag

Utilizza la seguente IAM politica per consentire a un utente di modificare un cluster Amazon Redshift solo per un AWS account specifico nella us-west-2 regione con un tag denominato environment con un valore di tag di. test

{ "Version": "2012-10-17", "Statement": { "Sid":"AllowModifyTestCluster", "Effect": "Allow", "Action": "redshift:ModifyCluster", "Resource": "arn:aws:redshift:us-west-2:123456789012:cluster:*", "Condition": { "StringEquals": { "aws:ResourceTag/environment": "test" } } } }

Esempio 2: limitazione dell'accesso utilizzando la chiave aws: condition RequestTag

Utilizza la seguente IAM policy per consentire a un utente di creare un cluster Amazon Redshift solo se il comando per creare il cluster include un tag denominato usage e un valore di tag di. production La condizione con aws:TagKeys e il modificatore ForAllValues specifica che solo le chiavi costcenter e usage possono essere specificate nella richiesta.

{ "Version": "2012-10-17", "Statement": { "Sid":"AllowCreateProductionCluster", "Effect": "Allow", "Action": [ "redshift:CreateCluster", "redshift:CreateTags" ], "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/usage": "production" }, "ForAllValues:StringEquals": { "aws:TagKeys": [ "costcenter", "usage" ] } } } }