

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

# Controllo dell'accesso alle risorse Amazon Kinesis Data Streams tramite IAM
<a name="controlling-access"></a>

AWS Identity and Access Management (IAM) ti consente di fare quanto segue:
+ Crea utenti e gruppi con il tuo AWS account
+ Assegna credenziali di sicurezza uniche a ciascun utente del tuo account AWS 
+ Controlla le autorizzazioni di ogni utente per eseguire attività utilizzando le risorse AWS 
+ Consenti agli utenti di un altro AWS account di condividere le tue risorse AWS 
+ Crea ruoli per il tuo AWS account e definisci gli utenti o i servizi che possono assumerli
+ Utilizza le identità esistenti per la tua azienda per concedere le autorizzazioni per eseguire attività utilizzando le risorse AWS 

Utilizzando IAM con il flusso di dati Kinesis, puoi controllare se gli utenti all'interno dell'organizzazione sono in grado di eseguire un'attività utilizzando specifiche operazioni API del flusso di dati Kinesis e se possono utilizzare risorse AWS specifiche.

Se stai sviluppando un'applicazione utilizzando la Kinesis Client Library (KCL), la tua policy deve includere le autorizzazioni per Amazon DynamoDB e Amazon CloudWatch; KCL utilizza DynamoDB per tenere traccia delle informazioni sullo stato dell'applicazione e per inviare i parametri KCL a tuo nome. CloudWatch CloudWatch Per ulteriori informazioni sull'KCL, consulta [Sviluppa i consumatori di KCL 1.x](developing-consumers-with-kcl.md).

Per ulteriori informazioni su IAM, consulta:
+ [AWS Identity and Access Management (IAM)](https://aws.amazon.com/iam/)
+ [Guida introduttiva a IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/getting-started.html)
+ [Guida per l'utente di IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/)

Per ulteriori informazioni sulla gestione dell'accesso ad Amazon DynamoDB, consulta [Utilizzo di IAM per il controllo degli accessi alle risorse Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/UsingIAMWithDDB.html) nella *Guida per gli sviluppatori di Amazon DynamoDB*. 

Per ulteriori informazioni su IAM e Amazon CloudWatch, consulta [Controlling User Access to Your AWS Account](https://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/UsingIAM.html) nella *Amazon CloudWatch User Guide*.

**Topics**
+ [

## Sintassi delle policy
](#policy-syntax)
+ [

## Operazioni per il flusso di dati Kinesis
](#kinesis-using-iam-actions)
+ [

## Nomi di risorse Amazon (ARNs) per Kinesis Data Streams
](#kinesis-using-iam-arn-format)
+ [

## Criteri di esempio per Kinesis Data Streams
](#kinesis-using-iam-examples)
+ [

## Condividi il tuo flusso di dati con un altro account
](#sharing-data-streams)
+ [

## Configurare una AWS Lambda funzione per la lettura da Kinesis Data Streams in un altro account
](#sharing-data-streams-example)
+ [

# Condividi l'accesso utilizzando politiche basate sulle risorse
](resource-based-policy-examples.md)

## Sintassi delle policy
<a name="policy-syntax"></a>

Una policy IAM è un documento JSON costituito da una o più dichiarazioni. Ogni dichiarazione è strutturata come segue:

```
{
  "Statement":[{
    "Effect":"effect",
    "Action":"action",
    "Resource":"arn",
    "Condition":{
      "condition":{
        "key":"value"
        }
      }
    }
  ]
}
```

Una dichiarazione è costituita da diversi elementi:
+ **Effect** (Effetto): l'elemento *effect* può essere `Allow` o `Deny`. Per impostazione predefinita, gli utenti IAM non dispongono dell'autorizzazione per l'utilizzo di risorse e operazioni API, pertanto tutte le richieste vengono rifiutate. Un permesso esplicito sostituisce l'impostazione predefinita. Un rifiuto esplicito sovrascrive tutti i consensi.
+ **Action** (Operazione): l'elemento *action* corrisponde all'operazione API specifica per la quale si concede o si nega l'autorizzazione.
+ **Resource** (Risorsa): la risorsa che viene modificata dall'operazione. Per specificare una risorsa nella dichiarazione, devi utilizzare il relativo Amazon Resource Name (ARN).
+ **Condition**: le condizioni sono facoltative. Possono essere utilizzate per controllare quando sarà in vigore una policy.

Quando crei e gestisci policy &IAM;, puoi utilizzare gli strumenti [Generatore di policy IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html#access_policies_create-generator) e [Simulatore di policy IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_testing-policies.html).

## Operazioni per il flusso di dati Kinesis
<a name="kinesis-using-iam-actions"></a>

In una dichiarazione di policy IAM, è possibile specificare qualsiasi operazione API per qualsiasi servizio che supporta IAM. Per il flusso di dati Kinesis, utilizza il seguente prefisso con il nome dell'operazione API: `kinesis:`. For example: `kinesis:CreateStream`, `kinesis:ListStreams` e `kinesis:DescribeStreamSummary`.

Per specificare più azioni in una sola istruzione, separa ciascuna di esse con una virgola come mostrato di seguito:

```
"Action": ["kinesis:action1", "kinesis:action2"]
```

Puoi anche specificare più operazioni tramite caratteri jolly. Ad esempio, puoi specificare tutte le operazioni il cui nome inizia con la parola "Get" come segue:

```
"Action": "kinesis:Get*"
```

Per specificare tutte le operazioni del flusso di dati Kinesis, utilizza il carattere jolly (\$1) come mostrato di seguito:

```
"Action": "kinesis:*"
```

Per l'elenco completo delle operazioni API del flusso di dati Kinesis, consulta la [Documentazione di riferimento delle API di Amazon Kinesis](https://docs.aws.amazon.com/kinesis/latest/APIReference/).

## Nomi di risorse Amazon (ARNs) per Kinesis Data Streams
<a name="kinesis-using-iam-arn-format"></a>

Ogni dichiarazione di policy IAM si applica alle risorse specificate utilizzando le loro. ARNs

Usa il seguente formato di risorsa ARN per il flusso di dati Kinesis:

```
arn:aws:kinesis:region:account-id:stream/stream-name
```

Esempio:

```
"Resource": arn:aws:kinesis:*:111122223333:stream/my-stream
```

## Criteri di esempio per Kinesis Data Streams
<a name="kinesis-using-iam-examples"></a>

Le policy di esempio seguenti dimostrano in che modo puoi controllare l'accesso degli utenti al flusso di dati Kinesis.

------
#### [ Example 1: Allow users to get data from a stream ]

**Example**  
 Questa policy consente a un utente o a un gruppo di eseguire le operazioni `DescribeStreamSummary`, `GetShardIterator` e `GetRecords` nel flusso specificato e `ListStreams` su qualsiasi flusso. Questa policy può essere applicata a utenti che devono essere in grado di ottenere dati da un determinato flusso.     
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "kinesis:Get*",
                "kinesis:DescribeStreamSummary"
            ],
            "Resource": [
            "arn:aws:kinesis:us-east-1:111122223333:stream/stream1"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "kinesis:ListStreams"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}
```

------
#### [ Example 2: Allow users to add data to any stream in the account ]

**Example**  
Questa policy consente a un utente o un gruppo di utilizzare l'operazione `PutRecord` con uno qualsiasi dei flussi dell'account. Questa policy potrebbe essere applicata agli utenti che devono essere in grado di aggiungere record di dati a tutti i flussi in un account.    
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "kinesis:PutRecord"
            ],
            "Resource": [
                "arn:aws:kinesis:us-east-1:111122223333:stream/*"
            ]
        }
    ]
}
```

------
#### [ Example 3: Allow any Kinesis Data Streams action on a specific stream ]

**Example**  
Questa policy consente a un utente o a un gruppo di utilizzare qualsiasi operazione del flusso di dati Kinesis sul flusso specificato. Questa policy potrebbe essere applicata agli utenti che devono avere il controllo amministrativo su un determinato flusso.    
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "kinesis:*",
            "Resource": [
            "arn:aws:kinesis:us-east-1:111122223333:stream/stream1"
            ]
        }
    ]
}
```

------
#### [ Example 4: Allow any Kinesis Data Streams action on any stream ]

**Example**  
Questa policy consente a un utente o a un gruppo di utilizzare qualsiasi operazione del flusso di dati Kinesis su qualsiasi flusso in un account. Poiché questa policy concede l'accesso completo a tutti i flussi, devi limitarla ai soli amministratori.    
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "kinesis:*",
            "Resource": [
                "arn:aws:kinesis:*:111122223333:stream/*"
            ]
        }
    ]
}
```

------

## Condividi il tuo flusso di dati con un altro account
<a name="sharing-data-streams"></a>

**Nota**  
 La Kinesis Producer Library attualmente non supporta la specificazione di un ARN di flusso durante la scrittura su un flusso di dati. Utilizza l' AWS SDK se desideri scrivere su un flusso di dati tra account. 

Collega una [policy basata sulle risorse](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_resource-based) al tuo flusso di dati per garantire l'accesso a un altro account, utente o ruolo IAM. Le policy basate sulle risorse sono documenti di policy JSON che colleghi a una risorsa come un flusso di dati. Queste policy concedono [all'entità principale specificata](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html) l'autorizzazione per eseguire operazioni specifiche sulla risorsa e definiscono le condizioni in cui ciò si applica. Una policy può avere più dichiarazioni. In una policy basata sulle risorse è obbligatorio specificare un’entità principale. I principali possono includere account, utenti, ruoli, utenti federati o servizi. AWS È possibile configurare le policy nella console, nell'API o nell'SDK di Kinesis Data Streams. 

Ricorda che la condivisione dell'accesso ai consumatori registrati come [Fan-out avanzato](https://docs.aws.amazon.com/streams/latest/dev/enhanced-consumers.html) richiede una policy sia sull'ARN del flusso di dati sia sull'ARN del consumatore. 

### Abilita l'accesso su più account
<a name="sharing-data-streams-enabling"></a>

Per consentire l’accesso multi-account, è possibile specificare un intero account o entità IAM in un altro account come entità principale in una policy basata sulle risorse. L’aggiunta di un’entità principale multi-account a una policy basata sulle risorse rappresenta solo una parte della relazione di trust. Quando il principale e la risorsa si trovano in AWS account separati, è inoltre necessario utilizzare una politica basata sull'identità per concedere al principale l'accesso alla risorsa. Tuttavia, se una policy basata su risorse concede l’accesso a un principale nello stesso account, non sono richieste ulteriori policy basate sull’identità. 

Per ulteriori informazioni sull'utilizzo delle policy basate sulle risorse per l'accesso multi-account, consulta [Accesso alle risorse multi-account in IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html).

Gli amministratori del flusso di dati possono utilizzare AWS Identity and Access Management le policy per specificare chi ha accesso a cosa. In altre parole, quale *entità principale* può eseguire *operazioni* su quali *risorse* e in quali *condizioni*. L'elemento `Action` di una policy JSON descrive le operazioni che è possibile utilizzare per consentire o negare l'accesso in una policy. Le azioni politiche in genere hanno lo stesso nome dell'operazione AWS API associata. 

Operazioni di Kinesis Data Streams che possono essere condivise:


| Azione | Livello di accesso | 
| --- | --- | 
| [DescribeStreamConsumer](https://docs.aws.amazon.com/kinesis/latest/APIReference/API_DescribeStreamConsumer.html) | Consumer | 
| [DescribeStreamSummary](https://docs.aws.amazon.com/kinesis/latest/APIReference/API_DescribeStreamSummary.html) | Flusso di dati | 
| [GetRecords](https://docs.aws.amazon.com/kinesis/latest/APIReference/API_GetRecords.html) | Flusso di dati | 
| [GetShardIterator](https://docs.aws.amazon.com/kinesis/latest/APIReference/API_GetShardIterator.html) | Flusso di dati | 
| [ListShards](https://docs.aws.amazon.com/kinesis/latest/APIReference/API_ListShards.html) | Flusso di dati | 
| [PutRecord](https://docs.aws.amazon.com/kinesis/latest/APIReference/API_PutRecord.html) | Flusso di dati | 
| [PutRecords](https://docs.aws.amazon.com/kinesis/latest/APIReference/API_PutRecords.html) | Flusso di dati | 
| [SubscribeToShard](https://docs.aws.amazon.com/kinesis/latest/APIReference/API_SubscribeToShard.html) | Consumer | 

Di seguito sono riportati alcuni esempi dell'utilizzo delle policy basate sulle risorse per concedere l'accesso multi-account al flusso di dati o al consumatore registrato. 

Per eseguire un'operazione su più account, è necessario specificare l'ARN del flusso per l'accesso al flusso di dati e l'ARN consumatore per l'accesso dei consumatori registrati. 

### Esempi di politiche basate sulle risorse per i flussi di dati Kinesis
<a name="kinesis-stream-sharing-iam-examples"></a>

La condivisione di un consumatore registrato implica sia una policy sul flusso di dati che una policy per i consumatori dovuta alle operazioni necessarie. 

**Nota**  
Di seguito alcuni esempi dei valori validi per `Principal`:  
`{"AWS": "123456789012"}`
Utente IAM – `{"AWS": "arn:aws:iam::123456789012:user/user-name"}`
Ruolo IAM – `{"AWS":["arn:aws:iam::123456789012:role/role-name"]}`
Principali multipli (può essere una combinazione di account, utente, ruolo) – `{"AWS":["123456789012", "123456789013", "arn:aws:iam::123456789012:user/user-name"]}`

------
#### [ Example 1: Write access to the data stream ]

**Example**    
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id": "__default_write_policy_ID",
    "Statement": [
        {
            "Sid": "writestatement",
            "Effect": "Allow",
            "Principal": {
                "AWS": "Account12345"
            },
            "Action": [
                "kinesis:DescribeStreamSummary",
                "kinesis:ListShards",
                "kinesis:PutRecord",
                "kinesis:PutRecords"
            ],
            "Resource": "arn:aws:kinesis:us-east-2:123456789012:stream/datastreamABC"
        }
    ]
}
```

------
#### [ Example 2: Read access to the data stream ]

**Example**    
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id": "__default_sharedthroughput_read_policy_ID",
    "Statement": [
        {
            "Sid": "sharedthroughputreadstatement",
            "Effect": "Allow",
            "Principal": {
                "AWS": "Account12345"
            },
            "Action": [                
                "kinesis:DescribeStreamSummary",
                "kinesis:ListShards",
                "kinesis:GetRecords",
                "kinesis:GetShardIterator"
            ],
            "Resource": "arn:aws:kinesis:us-east-2:123456789012:stream/datastreamABC"
        }
    ]
}
```

------
#### [ Example 3: Share enhanced fan-out read access to a registered consumer ]

**Example**  
Dichiarazione sulla policy del flusso di dati:     
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id": "__default_sharedthroughput_read_policy_ID",
    "Statement": [
        {
            "Sid": "consumerreadstatement",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111122223333:role/role-name"
            },
            "Action": [
                "kinesis:DescribeStreamSummary",
                "kinesis:ListShards"
            ],
            "Resource": "arn:aws:kinesis:us-east-2:123456789012:stream/datastreamABC"
        }
    ]
}
```
Dichiarazione della policy del consumatore:    
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id": "__default_efo_read_policy_ID",
    "Statement": [
        {
            "Sid": "eforeadstatement",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111122223333:role/role-name"
            },
            "Action": [
                "kinesis:DescribeStreamConsumer",
                "kinesis:SubscribeToShard"
            ],
            "Resource": "arn:aws:kinesis:us-east-2:123456789012:stream/datastreamABC/consumer/consumerDEF:1674696300"
        }
    ]
}
```
Wildcard (\$1) non è supportato per operazioni o campi principali, per mantenere il principio del privilegio minimo. 

------

### Gestisci la policy per il tuo flusso di dati in modo programmatico
<a name="sharing-data-streams-managing-policy"></a>

Oltre a ciò Console di gestione AWS, Kinesis Data Streams dispone di tre API per la gestione delle policy relative al flusso di dati: 
+ [PutResourcePolicy](https://docs.aws.amazon.com/kinesis/latest/APIReference/API_PutResourcePolicy.html)
+ [GetResourcePolicy](https://docs.aws.amazon.com/kinesis/latest/APIReference/API_GetResourcePolicy.html)
+ [DeleteResourcePolicy](https://docs.aws.amazon.com/kinesis/latest/APIReference/API_DeleteResourcePolicy.html)

Utilizza `PutResourePolicy` per collegare o sovrascrivere una policy del flusso di dati o del consumatore. Utilizza `GetResourcePolicy` per controllare e visualizzare una policy del flusso di dati o del consumatore specificato. Utilizza `DeleteResourcePolicy` per eliminare una policy del flusso di dati o del consumatore specificato. 

### Limiti delle policy
<a name="sharing-data-streams-validating"></a>

Le policy delle risorse di Kinesis Data Streams prevedono le seguenti restrizioni: 
+ Le Wildcard (\$1) non sono supportate per impedire che venga concesso un ampio accesso attraverso le politiche relative alle risorse che sono direttamente collegate a un flusso di dati o a un consumatore registrato. Inoltre, esamina attentamente le seguenti politiche per verificare che non garantiscano un ampio accesso:
  + Politiche basate sull'identità collegate ai AWS principali associati (ad esempio, ruoli IAM)
  + Politiche basate sulle risorse collegate alle AWS risorse associate (ad esempio, chiavi KMS) AWS Key Management Service 
+ AWS [I responsabili dei servizi non sono supportati per i presidi per evitare potenziali deputati confusi.](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html) 
+ I principali federati non sono supportati. 
+ Gli utenti canonici non sono supportati. IDs 
+ La dimensione della policy non può superare i 20 KB. 

### Condividi l'accesso ai dati crittografati
<a name="sharing-access-to-encrypted-data-1"></a>

Se hai abilitato la crittografia lato server per un flusso di dati con chiave KMS AWS gestita e desideri condividere l'accesso tramite una politica delle risorse, devi passare all'utilizzo della chiave gestita dal cliente (CMK). Per ulteriori informazioni, consulta [Cos'è la crittografia lato server per Kinesis Data Streams?](what-is-sse.md). Inoltre, devi consentire alle entità principali di condivisione di accedere alla CMK utilizzando le funzionalità di condivisione tra account di KMS. Ricorda di apportare la modifica anche alle policy IAM per le entità principali di condivisione. Per ulteriori informazioni, consulta [Autorizzazione per gli utenti in altri account a utilizzare una chiave KMS](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying-external-accounts.html).

## Configurare una AWS Lambda funzione per la lettura da Kinesis Data Streams in un altro account
<a name="sharing-data-streams-example"></a>

Per vedere un esempio di come configurare una funzione Lambda per la lettura da Kinesis Data Streams in un altro account, consulta [Condividi l'accesso con funzioni tra account AWS Lambda](resource-based-policy-examples.md#Resource-based-policy-examples-lambda). 

# Condividi l'accesso utilizzando politiche basate sulle risorse
<a name="resource-based-policy-examples"></a>

**Nota**  
Aggiornare una policy esistente basata sulle risorse significa sostituire quella già esistente, quindi assicurati di includere tutte le informazioni necessarie nella nuova policy. 

## Condividi l'accesso con funzioni tra account AWS Lambda
<a name="Resource-based-policy-examples-lambda"></a>

**Operatore Lambda**

1. Vai alla [console IAM](https://console.aws.amazon.com/iam/) per creare un ruolo IAM che verrà utilizzato come ruolo di [esecuzione Lambda per la tua AWS Lambda funzione](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). Aggiungi la policy IAM gestita con `AWSLambdaKinesisExecutionRole` le autorizzazioni di invocazione Kinesis Data Streams e Lambda richieste. Questa policy concede anche l'accesso a tutte le potenziali risorse di Kinesis Data Streams a cui potresti avere accesso. 

1. Nella [AWS Lambda console](https://console.aws.amazon.com/lambda/home), crea una AWS Lambda funzione [per elaborare i record in un flusso di dati Kinesis Data Streams](https://docs.aws.amazon.com/lambda/latest/dg/with-kinesis.html) e, durante la configurazione del ruolo di esecuzione, scegli il ruolo creato nel passaggio precedente. 

1. Fornisci il ruolo di esecuzione al proprietario della risorsa Kinesis Data Streams per la configurazione della policy delle risorse. 

1. Completa la configurazione della funzione Lambda. 

**Proprietario della risorsa di Kinesis Data Streams**

1. Ottieni il ruolo di esecuzione Lambda multi-account che richiamerà la funzione Lambda. 

1. Nella console di Amazon Kinesis Data Streams, scegli il flusso di dati. Scegli la scheda **Condivisione del flusso di dati** e poi il pulsante **Crea una policy di condivisione** per avviare l'editor visivo delle policy. Per condividere un consumatore registrato all'interno di un flusso di dati, scegli il consumatore e poi seleziona **Crea una policy di condivisione**. Puoi anche scrivere direttamente la policy JSON. 

1. Specifica il ruolo di esecuzione Lambda multi-account come principale e le operazioni Kinesis Data Streams esatte a cui condividi l'accesso. Ricorda di includere l'operazione `kinesis:DescribeStream`. Per ulteriori informazioni su esempi di policy delle risorse per Kinesis Data Streams, consulta [Esempi di politiche basate sulle risorse per i flussi di dati Kinesis](controlling-access.md#kinesis-stream-sharing-iam-examples).

1. Scegli **Crea policy** o usa [PutResourcePolicy](https://docs.aws.amazon.com/kinesis/latest/APIReference/API_PutResourcePolicy.html)per allegare la policy alla tua risorsa. 

## Condividi l'accesso con i consumatori KCL con più account
<a name="Resource-based-policy-examples-kcl-consumers"></a>
+ Se utilizzi KCL 1.x, assicurati di usare la versione KCL 1.15.0 o successive. 
+ Se utilizzi KCL 2.x, assicurati di usare la versione KCL 2.5.3 o successive. 

**Operatore KCL**

1. Fornisci al proprietario della risorsa il tuo utente IAM o il ruolo IAM che eseguirà l'applicazione KCL. 

1. Chiedi al proprietario della risorsa il flusso di dati o l'ARN consumatore. 

1. Ricorda di specificare l'ARN del flusso fornito come parte della configurazione KCL. 
   + Per KCL 1.x: usa il [KinesisClientLibConfiguration](https://github.com/awslabs/amazon-kinesis-client/blob/v1.x/src/main/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/KinesisClientLibConfiguration.java#L738-L821)costruttore e fornisci lo stream ARN. 
   + Per KCL 2.x: puoi fornire solo l'ARN dello stream o [StreamTracker](https://github.com/awslabs/amazon-kinesis-client/blob/master/amazon-kinesis-client/src/main/java/software/amazon/kinesis/processor/StreamTracker.java)la Kinesis Client Library. [ConfigsBuilder](https://github.com/awslabs/amazon-kinesis-client/blob/master/amazon-kinesis-client/src/main/java/software/amazon/kinesis/common/ConfigsBuilder.java#L155-L176) Per StreamTracker, fornisci lo stream ARN e Creation Epoch dalla DynamoDB Lease Table generata dalla libreria. Se desideri leggere da un utente registrato condiviso come Enhanced Fan-Out, usa StreamTracker e fornisci anche l'ARN del consumatore.

**Proprietario della risorsa di Kinesis Data Streams**

1. Ottieni l'utente IAM o il ruolo IAM multi-account che eseguirà l'applicazione KCL. 

1. Nella console di Amazon Kinesis Data Streams, scegli il flusso di dati. Scegli la scheda **Condivisione del flusso di dati** e poi il pulsante **Crea una policy di condivisione** per avviare l'editor visivo delle policy. Per condividere un consumatore registrato all'interno di un flusso di dati, scegli il consumatore e poi seleziona **Crea una policy di condivisione**. Puoi anche scrivere direttamente la policy JSON. 

1. Specifica l'utente IAM o il ruolo IAM dell'applicazione KCL su più account come le operazioni Kinesis Data Streams principali ed esatte a cui condividi l'accesso. Per ulteriori informazioni su esempi di policy delle risorse per Kinesis Data Streams, consulta [Esempi di politiche basate sulle risorse per i flussi di dati Kinesis](controlling-access.md#kinesis-stream-sharing-iam-examples). 

1. Scegli **Crea policy** o usa [PutResourcePolicy](https://docs.aws.amazon.com/kinesis/latest/APIReference/API_PutResourcePolicy.html)per allegare la policy alla tua risorsa. 

## Condividi l'accesso ai dati crittografati
<a name="sharing-access-to-encrypted-data"></a>

Se hai abilitato la crittografia lato server per un flusso di dati con chiave KMS AWS gestita e desideri condividere l'accesso tramite una politica delle risorse, devi passare all'utilizzo della chiave gestita dal cliente (CMK). Per ulteriori informazioni, consulta [Cos'è la crittografia lato server per Kinesis Data Streams?](what-is-sse.md). Inoltre, devi consentire alle entità principali di condivisione di accedere alla CMK utilizzando le funzionalità di condivisione tra account di KMS. Ricorda di apportare la modifica anche alle policy IAM per le entità principali di condivisione. Per ulteriori informazioni, consulta [Autorizzazione per gli utenti in altri account a utilizzare una chiave KMS](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying-external-accounts.html).