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:
-
Per Amazon Redshift consulta Operazioni, risorse e chiavi di condizione per Amazon Redshift che utilizzano il prefisso
redshift:
. -
Per Amazon Redshift serverless consulta Operazioni, risorse e chiavi di condizione per Amazon Redshift serverless che utilizzano il prefisso
redshift-serverless:
. -
Per i dati di Amazon RedshiftAPI, consulta Azioni, risorse e chiavi di condizione per Amazon Redshift API Data che utilizzano il prefisso.
redshift-data:
-
Per l'editor di query di Amazon Redshift v2, consulta Azioni, risorse e chiavi di condizione per AWS SQL Workbench (Amazon Redshift query editor v2) che utilizzano il prefisso.
sqlworkbench:
L'editor di query v2 include azioni di sola autorizzazione che non corrispondono direttamente a un'operazione. API Queste operazioni sono indicate nella Guida di riferimento per l'autorizzazione al servizio con
[permission only]
.
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'operazioneDescribeClusters
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 |
---|---|
|
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. |
|
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. |
|
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 |
---|---|
|
Limita il numero di secondi che possono essere specificati per la durata. |
|
Limita i nomi di database che possono essere specificati. |
|
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" ] } } } }