

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

# Gestione delle autorizzazioni delle risorse con i connettori AWS SAM
<a name="managing-permissions-connectors"></a>

I connettori sono un tipo di risorsa astratto AWS Serverless Application Model (AWS SAM), identificato come`AWS::Serverless::Connector`, che fornisce autorizzazioni semplici e ben definite tra le risorse delle applicazioni serverless.

## Vantaggi dei connettori AWS SAM
<a name="connector-benefits"></a>

Componendo automaticamente le politiche di accesso appropriate tra le risorse, Connectors vi offre la possibilità di creare applicazioni serverless e concentrarvi sull'architettura dell'applicazione senza bisogno di competenze in termini di funzionalità di AWS autorizzazione, linguaggio delle policy e impostazioni di sicurezza specifiche del servizio. Pertanto, i connettori rappresentano un grande vantaggio per gli sviluppatori che potrebbero essere alle prime armi nello sviluppo serverless o per gli sviluppatori esperti che desiderano aumentare la velocità di sviluppo.

## Utilizzo dei connettori AWS SAM
<a name="what-are-connectors"></a>

Usa l'attributo `Connectors` resource incorporandolo in una risorsa di **origine**. Quindi, definisci la risorsa di **destinazione** e descrivi come i dati o gli eventi devono fluire tra tali risorse. AWS SAM compone quindi le politiche di accesso necessarie per facilitare le interazioni richieste.

Di seguito viene descritto come viene scritto questo attributo di risorsa:

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
...
Resources:
  <source-resource-logical-id>:
    Type: <resource-type>
    ...
    Connectors:
      <connector-name>:
        Properties:
          Destination:
            <properties-that-identify-destination-resource>
          Permissions:
            <permission-types-to-provision>
  ...
```

## Come funzionano i connettori
<a name="connectors-work"></a>

**Nota**  
Questa sezione spiega come i connettori forniscono le risorse necessarie dietro le quinte. Ciò avviene automaticamente quando si utilizzano i connettori.

Innanzitutto, l'attributo di `Connectors` risorsa incorporato viene trasformato in un tipo di `AWS::Serverless::Connector` risorsa. Il relativo ID logico viene creato automaticamente come*<source-resource-logical-id><embedded-connector-logical-id>*.

Ad esempio, ecco un connettore incorporato:

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
...
Resources:
  MyFunction:
    Type: AWS::Lambda::Function
    Connectors:
      MyConn:
        Properties:
          Destination:
            Id: MyTable
          Permissions:
            - Read
            - Write
  MyTable:
    Type: AWS::DynamoDB::Table
```

Questo genererà la seguente `AWS::Serverless::Connector` risorsa:

```
Transform: AWS::Serverless-2016-10-31
Resources:
  ...
  MyFunctionMyConn:
    Type: AWS::Serverless::Connector
    Properties:
      Source:
        Id: MyFunction
      Destination:
        Id: MyTable
      Permissions:
        - Read
        - Write
```

**Nota**  
È inoltre possibile definire i connettori nel AWS SAM modello utilizzando questa sintassi. Questa operazione è consigliata quando la risorsa di origine è definita su un modello separato dal connettore.

Successivamente, le politiche di accesso necessarie per questa connessione vengono composte automaticamente. Per ulteriori informazioni sulle risorse generate dai connettori, vedere[CloudFormation risorse generate quando si specifica AWS::Serverless::Connector](sam-specification-generated-resources-connector.md).

## Esempio di connettori
<a name="what-are-connectors-example"></a>

L'esempio seguente mostra come utilizzare i connettori per scrivere dati da una AWS Lambda funzione a una tabella Amazon DynamoDB.

![\[Una funzione Lambda che scrive dati su una tabella DynamoDB utilizzando connettori. AWS SAM\]](http://docs.aws.amazon.com/it_it/serverless-application-model/latest/developerguide/images/managing-connectors-example.png)


```
Transform: AWS::Serverless-2016-10-31
Resources:
  MyTable:
    Type: AWS::Serverless::SimpleTable
  MyFunction:
    Type: AWS::Serverless::Function
    Connectors:
      MyConn:
        Properties:
          Destination:
            Id: MyTable
          Permissions:
            - Write
    Properties:
      Runtime: nodejs16.x
      Handler: index.handler
      InlineCode: |
        const AWS = require("aws-sdk");
        const docClient = new AWS.DynamoDB.DocumentClient();
        exports.handler = async (event, context) => {
          await docClient.put({
            TableName: process.env.TABLE_NAME,
            Item: {
              id: context.awsRequestId,
              event: JSON.stringify(event) 
            }
          }).promise();
        }
      Environment:
        Variables:
          TABLE_NAME: !Ref MyTable
```

L'attributo `Connectors` resource è incorporato nella risorsa sorgente della funzione Lambda. La tabella DynamoDB è definita come risorsa di destinazione utilizzando la proprietà. `Id` I connettori forniranno le `Write` autorizzazioni tra queste due risorse.

Quando distribuisci il AWS SAM modello su CloudFormation, AWS SAM comporrà automaticamente le politiche di accesso necessarie per il funzionamento di questa connessione.

## Connessioni supportate tra risorse di origine e destinazione
<a name="supported-connector-resources"></a>

Supportano i connettori `Read` e `Write` i tipi di autorizzazione per dati ed eventi tra una combinazione selezionata di connessioni alle risorse di origine e destinazione. Ad esempio, i connettori supportano una `Write` connessione tra una `AWS::ApiGateway::RestApi` risorsa di origine e una risorsa di `AWS::Lambda::Function` destinazione.

Le risorse di origine e di destinazione possono essere definite utilizzando una combinazione di proprietà supportate. I requisiti delle proprietà dipenderanno dalla connessione che si sta effettuando e da dove vengono definite le risorse.

**Nota**  
I connettori possono fornire le autorizzazioni tra i tipi di risorse serverless e non serverless supportati.

Per un elenco delle connessioni di risorse supportate e dei relativi requisiti di proprietà, vedere. [Tipi di risorse di origine e destinazione supportati per i connettori](reference-sam-connector.md#supported-connector-resource-types)

## Ulteriori informazioni
<a name="connector-learn-more"></a>

Per ulteriori informazioni sull'uso dei AWS SAM connettori, consulta i seguenti argomenti:
+ [AWS::Serverless::Connector](sam-resource-connector.md)
+ [Definire le autorizzazioni di lettura e scrittura in AWS SAM](connector-usage-define.md)
+ [Definire le risorse utilizzando altre proprietà supportate in AWS SAM](connector-usage-other-properties.md)
+ [Crea più connettori da un'unica fonte in AWS SAM](connector-usage-single-source.md)
+ [Creare connettori a destinazione multipla in AWS SAM](connector-usage-multi-destination.md)
+ [Definire le autorizzazioni di lettura e scrittura in AWS SAM](connector-usage-define.md)
+ [Definire gli attributi delle risorse con i connettori in AWS SAM](connector-usage-resource-attributes.md)

## Rilascio di feedback
<a name="connector-feedback"></a>

Per fornire feedback sui connettori, [invia un nuovo problema](https://github.com/aws/serverless-application-model/issues/new?assignees=&labels=area%2Fconnectors,stage%2Fneeds-triage&template=other.md&title=%28Feature%20Request%29) al *serverless-application-model AWS GitHubrepository*.