

 Amazon Redshift non supporterà più la creazione di nuovi Python UDFs a partire dalla Patch 198. Python esistente UDFs continuerà a funzionare fino al 30 giugno 2026. Per ulteriori informazioni, consulta il [post del blog](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

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

# Azioni del producer per nuove unità di condivisione dati in Amazon Redshift
<a name="writes-producer-new"></a>

Con Amazon Redshift, puoi condividere dati in tempo reale tra cluster o account Amazon Redshift utilizzando le condivisioni AWS di dati. Un datashare è un oggetto consumer-produttore che ti consente di condividere dati in tempo reale dal tuo cluster Amazon Redshift con altri cluster o account. AWS La creazione di condivisioni di dati consente la condivisione sicura dei dati, mantenendo al contempo il controllo sull'accesso e garantendo la conservazione dei dati. up-to-date Nelle sezioni seguenti vengono forniti i dettagli della creazione di unità di condivisione dati e dell’aggiunta di oggetti di database come schemi, tabelle e viste per condividere i dati attivi in modo sicuro.

**Topics**
+ [Creazione di un’unità di condivisione dati in Amazon Redshift](writes-creating-datashare.md)
+ [Aggiunta di oggetti a un’unità di condivisione dati in Amazon Redshift](writes-adding-datashare.md)
+ [Aggiunta di consumer di dati a un’unità di condivisione dati in Amazon Redshift](writes-adding-data-consumer.md)
+ [Autorizzazione di un’unità di condivisione dati in Amazon Redshift](writes-authorizing.md)

# Creazione di un’unità di condivisione dati in Amazon Redshift
<a name="writes-creating-datashare"></a>

L'unità di condivisione dati è un container logico di oggetti, autorizzazioni e consumer del database. I consumer sono cluster con provisioning Amazon Redshift o namespace Amazon Redshift serverless presenti nell’account e in altri Account AWS. Ogni unità di condivisione dati è associata al database in cui è stata creata ed è possibile aggiungere solo gli oggetti di quel database. In qualità di amministratore producer puoi creare unità di condivisione dati sulla console e con SQL seguendo una delle procedure descritte.

------
#### [ Console ]

Sulla console puoi creare unità di condivisione dati dalle schede **Unità di condivisione dati** nella pagina dei dettagli del cluster o del namespace. Dopo avere creato l’unità di condivisione dati, puoi creare database dall’unità di condivisione dati per un consumer in qualità di amministratore consumer.

1. Accedi Console di gestione AWS e apri la console Amazon Redshift all'indirizzo. [https://console.aws.amazon.com/redshiftv2/](https://console.aws.amazon.com/redshiftv2/)

1. Dal menu di navigazione, scegliere **Clusters** (Cluster), quindi scegliere il cluster. Viene visualizzata la pagina dei dettagli del cluster.

1. Nella pagine dei dettagli del cluster o del namespace, nella scheda **Unità di condivisione dati**, nella sezione **Unità di condivisione dati**, connettiti a un database se non disponi di una connessione al database. Nella sezione **Unità di condivisione dati create nel mio account** scegli **Crea unità di condivisione dati**. Viene visualizzata la pagina **Crea unità di condivisione dati**.

1. Quindi scegliere **Crea unità di condivisione dati**. È possibile creare una unità di condivisione dati solo da un database locale. Se è la prima volta che si esegue la connessione al database, viene visualizzata la pagina **Connetti al database**. Seguire la procedura riportata in [Connessione a un database](connect-database-console.md) per connettersi a un database. Se esiste una connessione recente, viene visualizzata la pagina **Crea unità di condivisione dati**. 

1. Nella sezione **Informazioni su unità di condivisione dati**, selezionare una delle seguenti opzioni:
   + Scegli **Datashare** per creare condivisioni di dati per condividere dati a fini di lettura o scrittura tra diversi data warehouse Amazon Redshift (cluster con provisioning o endpoint Serverless) o nello stesso o in modo diverso. Account AWS Account AWS
   + **Scegli AWS Data Exchange datashare per creare datashare tramite cui concedere in licenza i tuoi dati.** AWS Data Exchange

1. Specificare i valori per **Nome unità di condivisione dati**, **Nome del database** e **Accessibile al pubblico**. Quando si modifica il nome del database, è necessario stabilire una nuova connessione al database.

1. Aggiungi oggetti all’unità di condivisione dati utilizzando le sezioni **Autorizzazioni con ambito** o **Autorizzazioni dirette**. Per aggiungere oggetti a un’unità di condivisione dati, consulta [Creazione di un’unità di condivisione dati in Amazon Redshift](#writes-creating-datashare). 

1. Nella sezione **Consumatori di dati**, puoi scegliere di pubblicare su Amazon Redshift o pubblicare su AWS Glue Data Catalog, che avvia il processo di condivisione dei dati con Lake Formation. Se pubblichi l’unità di condivisione dati in Amazon Redshift, condividi i dati con un altro namespace o un account Amazon Redshift che funge da consumer.
**Nota**  
Una volta creata l'unità di condivisione dati, non puoi modificare la configurazione per eseguire la pubblicazione utilizzando l'altra opzione.

1. Quindi scegliere **Crea unità di condivisione dati**.

------
#### [ SQL ]

Il seguente comando crea un'unità di condivisione dati:

```
CREATE DATASHARE salesshare;
```

Al momento della creazione dell’unità di condivisione dati, ogni unità di condivisione dati è associata a un database. Solo gli oggetti di quel database possono essere condivisi in quella unità di condivisione dati. Sullo stesso database possono essere create più unità di condivisione dati con la stessa granularità di oggetti o con una granularità differente. Non vi è alcun limite sul numero di unità di condivisione dati che un cluster può creare. Per creare le unità di condivisione dati è possibile utilizzare anche la console Amazon Redshift. Per ulteriori informazioni, consulta [CREARE DATASHARE](r_CREATE_DATASHARE.md).

Inoltre puoi controllare le limitazioni di sicurezza dell’unità di condivisione dati durante la creazione. L’esempio seguente mostra che il consumer con un accesso IP pubblico è autorizzato a leggere l’unità di condivisione dati.

```
CREATE DATASHARE my_datashare [PUBLICACCESSIBLE = TRUE];
```

L'impostazione PUBLICACCESSIBLE = TRUE consente ai consumer di eseguire query sull'unità di condivisione dati da cluster accessibili pubblicamente e gruppi di lavoro con provisioning. Disattivala o impostala esplicitamente su false se non vuoi consentirla.

Puoi modificare le proprietà relative al tipo di consumer dopo la creazione di un’unità di condivisione dati. Ad esempio, è possibile definire che i cluster che desiderano utilizzare dati da una determinata unità di condivisione dati non possano essere accessibili pubblicamente. Le query provenienti da cluster di consumer che non soddisfano le limitazioni di sicurezza specificate nell'unità di condivisione dati vengono rifiutate al momento dell'esecuzione della query. Per ulteriori informazioni, consulta [ALTER DATASHARE](r_ALTER_DATASHARE.md).

------

# Aggiunta di oggetti a un’unità di condivisione dati in Amazon Redshift
<a name="writes-adding-datashare"></a>

Puoi aggiungere oggetti del database di vario tipo sulla console e con SQL seguendo una delle procedure descritte. 

------
#### [ Console ]

Puoi aggiungere oggetti all’unità di condivisione dati utilizzando le sezioni **Autorizzazioni con ambito** o **Autorizzazioni dirette**. Seleziona **Concedi autorizzazioni con ambito** o **Concedi autorizzazioni dirette** per aggiungere oggetti. Seleziona il pulsante **Aggiungi** per aggiungere gli oggetti. Viene visualizzata una finestra di dialogo. Esegui queste fasi:

1. Se selezioni **Concedi autorizzazioni con ambito**, viene visualizzata la pagina **Concedi autorizzazioni con ambito** dove puoi concedere autorizzazioni con ambito a livello di database o schema. Le unità di condivisione dati con autorizzazioni con ambito dispongono delle autorizzazioni specificate per tutti gli oggetti correnti e futuri del database o dello schema. Per maggiori dettagli, consulta,[Autorizzazioni con ambito](t_scoped-permissions.md).

   1. Quindi seleziona **Autorizzazioni con ambito per i database** per concedere le autorizzazioni con ambito a livello di database. Quando concedi le autorizzazioni con ambito, queste si applicano al database corrente durante la creazione dell’unità di condivisione dati. Queste autorizzazioni non possono essere concesse a singoli oggetti e sono applicabili sia agli oggetti esistenti che a quelli nuovi (schemi, tabelle, viste, UDFs).

   1. Seleziona le autorizzazioni con ambito per gli schemi, le tabelle o le viste oppure le funzioni definite dall’utente. Ciò significa che tutti gli oggetti del database dispongono delle autorizzazioni selezionate concesse ai consumer. Seleziona **Concedi** per completare la concessione delle autorizzazioni con ambito per i database. 

   1. Quindi seleziona **Autorizzazioni con ambito per gli schemi** per concedere le autorizzazioni con ambito a livello di schema. Quando concedi le autorizzazioni con ambito per gli schemi, tutti gli oggetti aggiunti allo schema dispongono delle autorizzazioni per le unità di condivisione dati specificate. 

   1. Seleziona lo schema da aggiungere all’unità di condivisione dati dal menu a discesa. Puoi selezionare un solo schema alla volta. Quindi seleziona le autorizzazioni dirette che desideri concedere allo schema selezionato.

   1. Seleziona le autorizzazioni con ambito per gli oggetti dello schema come le tabelle, le viste e le funzioni definite dall’utente. Le autorizzazioni vengono concesse per tutti gli oggetti corrispondenti nello schema. Questi possono essere gli oggetti esistenti o quelli aggiunti in futuro. Quando un’autorizzazione viene applicata, non puoi rimuoverla da un oggetto senza revocare le autorizzazioni con ambito. 

   1. Seleziona **Concedi** per completare la concessione delle autorizzazioni con ambito per gli schemi. 

1. Se selezioni **Concedi autorizzazioni dirette**, viene visualizzata la pagina **Concedi autorizzazioni dirette** dove puoi concedere le autorizzazioni dirette a ogni livello di oggetto, ad esempio schema, tabella, vista o funzione definita dall’utente. Per concedere le autorizzazioni dirette, devi prima aggiungere gli schemi pertinenti all’unità di condivisione dati.

   1. Quindi seleziona **Concedi autorizzazioni dirette** agli schemi per applicare le autorizzazioni dirette a uno schema specifico. A questo punto seleziona le autorizzazioni dello schema per gli oggetti dello schema come tabelle, viste e funzioni definite dall’utente e seleziona lo schema che desideri aggiungere all’unità di condivisione dati. Seleziona **Concedi** per completare l’aggiunta dello schema all’unità di condivisione dati. 

   1. Dopo avere aggiunto uno schema all’unità di condivisione dati, puoi procedere con l’aggiunta di autorizzazioni dirette per gli oggetti dello schema. Seleziona nuovamente **Concedi autorizzazioni dirette**. Viene visualizzata la pagina **Concedi autorizzazioni dirette**. Quindi seleziona le schede delle autorizzazioni dirette per gli oggetti dello schema.

   1. Seleziona **Concedi autorizzazioni dirette a tabelle e viste** per concedere le autorizzazioni dirette a livello di oggetto per questi oggetti. Seleziona le autorizzazioni dirette e gli oggetti necessari dall’elenco. Utilizza il campo di ricerca per trovare gli oggetti dell’unità di condivisione dati. Seleziona Concedi per completare l’aggiunta di tabelle e viste all’unità di condivisione dati. 

   1. Seleziona **Concedi autorizzazioni dirette alle funzioni definite dall’utente** per concedere le autorizzazioni dirette a livello di oggetto per le funzioni definite dall’utente. Seleziona le autorizzazioni dirette e gli oggetti necessari dall’elenco. Utilizza il campo di ricerca per trovare gli oggetti dell’unità di condivisione dati. Seleziona **Concedi** per completare l’aggiunta di funzioni definite dall’utente all’unità di condivisione dati. 

1. Puoi anche scegliere di **aggiungere oggetti futuri**. Quando scegli di includere gli oggetti dell'unità di condivisione dati aggiunti allo schema significa che gli oggetti aggiunti allo schema vengono aggiunti automaticamente all'unità di condivisione dati.

1. Scegli **Aggiungi** per completare la sezione e aggiungere gli oggetti. Sono elencati in **Oggetti della condivisione di dati**.

1. Dopo averli aggiunti, puoi selezionare singoli oggetti e modificarne le autorizzazioni. Se selezioni uno schema, viene visualizzata una finestra di dialogo che ti chiede se desideri aggiungere le **autorizzazioni con ambito**. In tal modo ogni oggetto esistente o aggiunto allo schema dispone di un set di autorizzazioni preselezionato e appropriato per il tipo di oggetto. Ad esempio, l'amministratore può impostare che tutte le tabelle aggiunte abbiano le autorizzazioni SELECT e UPDATE.

1. Tutti gli oggetti dell’unità di condivisione dati sono elencati nelle sezioni **Autorizzazioni con ambito** o **Autorizzazioni dirette**.

1. Nella sezione **Consumatori di dati**, puoi aggiungere namespace o aggiungere AWS account come consumatori del datashare. 

1. Per salvare le modifiche seleziona **Crea unità di condivisione dati**.

Una volta creata, l'unità di condivisione dati viene visualizzata nell'elenco in **Unità di condivisione dati create nel mio spazio dei nomi**. Se scegli un'unità di condivisione dati dall'elenco, puoi visualizzarne i consumer, gli oggetti e altre proprietà.

------
#### [ SQL ]

Con SQL, il proprietario dell’unità di condivisione dati deve concedere l’autorizzazione USAGE per gli schemi che desidera aggiungere all’unità di condivisione dati. L’autorizzazione GRANT viene utilizzata per assegnare varie azioni per lo schema, tra cui CREATE e USAGE. Gli schemi contengono oggetti condivisi:

```
CREATE SCHEMA myshared_schema1;
CREATE SCHEMA myshared_schema2;
 
GRANT USAGE ON SCHEMA myshared_schema1 TO DATASHARE my_datashare;
GRANT CREATE, USAGE ON SCHEMA myshared_schema2 TO DATASHARE my_datashare;
```

In alternativa, l'amministratore può continuare a eseguire i comandi ALTER per aggiungere uno schema all'unità di condivisione dati. Quando uno schema viene aggiunto in questo modo, vengono assegnate solo le autorizzazioni USAGE.

```
ALTER DATASHARE my_datashare ADD SCHEMA myshared_schema1;
```

Dopo aver aggiunto gli schemi, l'amministratore può assegnare le autorizzazioni dell'unità di condivisione dati per gli oggetti dello schema, che possono essere autorizzazioni in lettura e scrittura. L'esempio GRANT ALL mostra come assegnare tutte le autorizzazioni.

```
GRANT SELECT, INSERT ON TABLE myshared_schema1.table1, myshared_schema1.table2, myshared_schema2.table1
TO DATASHARE my_datashare;
                     
GRANT ALL ON TABLE myshared_schema1.table4 TO DATASHARE my_datashare;
```

È possibile continuare a eseguire comandi come ALTER DATASHARE per aggiungere le tabelle. In tal caso, vengono assegnate solo le autorizzazioni SELECT per gli oggetti aggiunti.

```
ALTER DATASHARE my_datashare ADD TABLE myshared_schema1.table1, myshared_schema1.table2, myshared_schema2.table1;
```

Puoi concedere le autorizzazioni con ambito a un’unità di condivisione dati per tutti gli oggetti di un tipo all’interno di un database o uno schema. Le unità di condivisione dati con autorizzazioni con ambito dispongono delle autorizzazioni specificate per tutti gli oggetti correnti e futuri del database o dello schema.

 Puoi visualizzare l’ambito delle autorizzazioni con ambito a livello di database in [SVV\$1DATABASE\$1PRIVILEGES](r_SVV_DATABASE_PRIVILEGES.md). Puoi visualizzare l’ambito delle autorizzazioni con ambito a livello di schema in [SVV\$1SCHEMA\$1PRIVILEGES](r_SVV_SCHEMA_PRIVILEGES.md).

Di seguito è riportata la sintassi per concedere alle unità di condivisione dati le autorizzazioni con ambito. Per ulteriori informazioni sulle autorizzazioni con ambito, consulta [Autorizzazioni con ambito](t_scoped-permissions.md).

```
GRANT { CREATE | USAGE | ALTER | DROP } [,...] | ALL [ PRIVILEGES ] }FOR SCHEMAS IN
DATABASE db_name 
TO DATASHARE { datashare_name}

GRANT { { SELECT | INSERT | UPDATE | DELETE | DROP | ALTER | TRUNCATE | REFERENCES } [, ...] } | ALL [PRIVILEGES] } }FOR TABLES IN
{SCHEMA schema_name [DATABASE db_name ] | DATABASE db_name }
TO DATASHARE { datashare_name}

GRANT { EXECUTE | ALL [ PRIVILEGES ] }FOR FUNCTIONS IN
{SCHEMA schema_name [DATABASE db_name ] | DATABASE db_name }
TO DATASHARE { datashare_name}
```

------

# Aggiunta di consumer di dati a un’unità di condivisione dati in Amazon Redshift
<a name="writes-adding-data-consumer"></a>

Puoi aggiungere uno o più consumer di dati alle unità di condivisione dati sulla console o con SQL. I consumatori di dati possono essere namespace che identificano in modo univoco i cluster Amazon Redshift o. Account AWS

------
#### [ Console ]

È necessario scegliere esplicitamente di disabilitare o abilitare l'unità di condivisione dati con cluster con accesso pubblico.
+ Scegli **Aggiungi gli spazi dei nomi all’unità di condivisione dati**. Gli spazi dei nomi sono identificatori univoci globali (GUID) per il cluster Amazon Redshift.
+ Scegliere **Aggiungi Account AWS** all'unità di condivisione dati. L'utente specificato Account AWS deve disporre delle autorizzazioni di accesso al datashare.

------
#### [ SQL ]

Con SQL, l’amministratore assegna l’utilizzo dell’unità di condivisione dati a un namespace specifico dell’account. Puoi trovare l'ID dello spazio dei nomi come parte dell'ARN nella pagina dei dettagli del cluster, nella pagina dei dettagli dello spazio dei nomi Amazon Redshift serverless o eseguendo il comando `SELECT current_namespace;`. Per ulteriori informazioni, consulta [CURRENT\$1NAMESPACE](https://docs.aws.amazon.com/redshift/latest/dg/r_CURRENT_NAMESPACE.html).

```
GRANT USAGE ON DATASHARE my_datashare TO NAMESPACE '86b5169f-012a-234b-9fbb-e2e24359e9a8';
```

Di seguito è riportato un esempio di come concedere l’autorizzazione per l’utilizzo di un’unità di condivisione dati a un Account AWS. 

```
GRANT USAGE ON DATASHARE salesshare TO ACCOUNT '123456789012';
```

Di seguito è riportato un esempio di come concedere l'autorizzazione per l'utilizzo di un'unità di condivisione dati a un account Lake Formation.

```
GRANT USAGE ON DATASHARE salesshare TO ACCOUNT '123456789012' VIA DATA CATALOG;
```

------

# Autorizzazione di un’unità di condivisione dati in Amazon Redshift
<a name="writes-authorizing"></a>

Con Amazon Redshift puoi controllare l’accesso alle unità di condivisione dati autorizzando consumer specifici. Le condivisioni di dati consentono di condividere dati in tempo reale tra cluster Amazon Redshift nello stesso account o in account AWS diversi, fornendo un modo semplice per distribuire e utilizzare i dati analitici. Questa sezione fornisce step-by-step istruzioni per autorizzare e revocare l'accesso dei consumatori alle tue condivisioni di dati in Amazon Redshift.

**Nota**  
Se aggiungi un namespace come consumer di dati, non devi eseguire l’autorizzazione. Per autorizzare un’unità di condivisione dati, devi aggiungere almeno un consumer all’unità di condivisione dati.

------
#### [ Console ]

In qualità di amministratore producer puoi scegliere quali consumer di dati autorizzare ad accedere alle unità di condivisione dati o per cui rimuovere l’autorizzazione. I consumer di dati autorizzati ricevono notifiche per intraprendere azioni sulle unità di condivisione dati. Se aggiungi un namespace come consumer di dati, non devi eseguire l’autorizzazione.

1. Accedi Console di gestione AWS e apri la console Amazon Redshift all'indirizzo. [https://console.aws.amazon.com/redshiftv2/](https://console.aws.amazon.com/redshiftv2/)

1. Dal menu di navigazione, scegliere **Datashares** (Unità di condivisione dati). Viene visualizzato l'elenco **Consumer delle unità di condivisione dati**. Scegli uno o più cluster consumer che desideri autorizzare. Quindi scegliere **Authorize (Autorizza)**.

1. Viene visualizzata la finestra di dialogo **Autorizza account**. Puoi scegliere tra un paio di tipi di autorizzazione. 
   + **Sola lettura su [nome del cluster o nome del gruppo di lavoro]**: significa che le autorizzazioni di scrittura non sono disponibili per il consumer, anche se il creatore dell'unità di condivisione dati le ha assegnate.
   + **Lettura e scrittura su [nome del cluster o nome del gruppo di lavoro]**: significa che tutte le autorizzazioni assegnate dal creatore, incluse le autorizzazioni di scrittura, sono disponibili per il consumer.

1. Scegli **Save** (Salva).

Puoi anche effettuare l'autorizzazione AWS Data Exchange come consumatore.

1. Se scegli **Pubblica su AWS Glue Data Catalog** quando crei l'unità di condivisione dati, puoi fornire l'autorizzazione per l'unità di condivisione dati solo a un account Lake Formation.

   Per il AWS Data Exchange datashare, puoi autorizzare solo un datashare alla volta.

   Quando autorizzi un AWS Data Exchange datashare, condividi il datashare con il AWS Data Exchange servizio e AWS Data Exchange permetti di gestire l'accesso al datashare per tuo conto. AWS Data Exchange consente l'accesso ai consumatori aggiungendo account consumer come consumatori di dati al AWS Data Exchange datashare quando sottoscrivono i prodotti. AWS Data Exchange non ha accesso in lettura al datashare.

1. Scegli **Save** (Salva).

Una volta autorizzati i consumer di dati, questi possono accedere agli oggetti dell'unità di condivisione dati e creare un database consumer per eseguire le query sui dati. 

------
#### [ API ]

L'amministratore della sicurezza dei producer determina quanto segue:
+ Indica se un altro account può avere accesso o meno all'unità di condivisione dati.
+ Indica se un account ha accesso all'unità di condivisione dati, indipendentemente dal fatto che disponga o meno delle autorizzazioni di scrittura.

Per autorizzare un'unità di condivisione dati sono necessarie le seguenti autorizzazioni IAM: 

**spostamento verso il rosso: AuthorizeDataShare**

Puoi autorizzare l'utilizzo e le operazioni di scrittura utilizzando una chiamata della CLI o l'API:

```
authorize-data-share
--data-share-arn <value>
--consumer-identifier <value>
[--allow-writes | --no-allow-writes]
```

Per ulteriori informazioni sul comando, vedere [authorize-data-share](https://docs.aws.amazon.com/cli/latest/reference/redshift/authorize-data-share.html).

L'identificatore del consumer può essere:
+ Un ID di AWS account a dodici cifre.
+ L'ARN dell'identificatore dello spazio dei nomi.

**Nota**  
Le autorizzazioni di scrittura non vengono concesse nella fase di autorizzazione. L'autorizzazione di un'unità di condivisione dati per le operazioni di scrittura consente all'account di disporre solo delle autorizzazioni di scrittura assegnate dall'amministratore dell'unità di condivisione dati. Se un amministratore non consente le operazioni di scrittura, le uniche autorizzazioni disponibili per il consumer specifico sono SELECT, USAGE ed EXECUTE.

È possibile modificare l'autorizzazione di un consumer dell'unità di condivisione dati chiamando nuovamente `authorize-data-share`, ma con un valore diverso. La precedente autorizzazione viene sovrascritta dalla nuova autorizzazione. Pertanto, se originariamente autorizzi e consenti le operazioni di scrittura, quindi autorizzi nuovamente e specifichi `no-allow-writes` o semplicemente non specifichi un valore, al consumer verranno revocate le autorizzazioni di scrittura.

------