

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

# Pubblicazione delle applicazioni
<a name="serverlessrepo-how-to-publish"></a>

Questa sezione fornisce le procedure per pubblicare l'applicazione serverless su AWS Serverless Application Repository utilizzando la AWS SAM CLI o il. Console di gestione AWS Viene inoltre illustrato come condividere l'applicazione per consentire ad altri di distribuirla ed eliminare l'applicazione da AWS Serverless Application Repository.

**Importante**  
Le informazioni immesse durante la pubblicazione di un'applicazione non sono crittografate. Queste informazioni includono dati come il nome dell'autore. Se si dispone di informazioni personali che non si desidera archiviare o rendere pubbliche, ti consigliamo di non inserire queste informazioni durante la pubblicazione dell'applicazione.

## Pubblicazione di un'applicazione (AWS CLI)
<a name="publishing-application-through-cli"></a>

Il modo più semplice per pubblicare un'applicazione su AWS Serverless Application Repository è utilizzare un set di comandi AWS SAM CLI. Per ulteriori informazioni, consulta [Pubblicazione di un'applicazione utilizzando la AWS SAM CLI](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-sam-template-publishing-applications.html) nella *AWS Serverless Application Model (AWS SAM) Developer* Guide.

## Pubblicazione di una nuova applicazione (console)
<a name="publishing-application-through-aws-console"></a>

Questa sezione mostra come utilizzare la Console di gestione AWS per pubblicare una nuova applicazione su. AWS Serverless Application Repository Per istruzioni sulla pubblicazione di una nuova versione di un'applicazione esistente, consulta [Pubblicazione di una nuova versione di un'applicazione esistente](serverlessrepo-how-to-publish-new-version.md).

### Prerequisiti
<a name="publishing-application-prerequisites"></a>

Prima di pubblicare un'applicazione su AWS Serverless Application Repository, è necessario quanto segue:
+ Un AWS account valido.
+ Un modello valido AWS Serverless Application Model (AWS SAM) che definisce le AWS risorse utilizzate. Per ulteriori informazioni sui AWS SAM modelli, vedere Nozioni di [base sui AWS SAM modelli](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-sam-template-basics.html). 
+ Un pacchetto per l'applicazione che è stato creato utilizzando il AWS CloudFormation `package` comando per. AWS CLI Questo comando impacchetta gli artefatti locali (percorsi locali) a cui fa riferimento il AWS SAM modello. Per maggiori dettagli, consulta il [pacchetto](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/package.html) nella CloudFormation documentazione. 
+ Un URL che punti al codice sorgente dell'applicazione, qualora intendi rendere pubblica la tua applicazione.
+ Un file readme.txt file. Questo file dovrebbe descrivere come i clienti possono utilizzare l'applicazione e come configurarla prima di distribuirla nei propri AWS account. 
+ Un file license .txt o un identificatore di licenza valido dal [sito Web SPDX](https://spdx.org/licenses/). Una licenza è necessaria solo se desideri condividere pubblicamente l'applicazione. Per mantenere l'applicazione privata o per condividerla solo privatamente, non è necessario specificare una licenza.
+ Una policy sui bucket di Amazon S3 valida che conceda al servizio le autorizzazioni di lettura per gli artefatti caricati su Amazon S3 al momento della creazione del pacchetto dell'applicazione. Per impostare questa policy, attieniti alla seguente procedura:

  1. Apri la console Amazon S3 all'indirizzo. [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)

  1. Scegli il bucket Amazon S3 che hai usato per impacchettare la tua applicazione.

  1. Scegli la scheda **Autorizzazioni**.

  1. Scegliere il pulsante **Bucket Policy (Policy bucket)**.

  1. Incollare l'istruzione di policy seguente nell'**editor delle policy dei bucket**. Assicurati di sostituire il nome del bucket nell'`Resource`elemento e l'ID dell' AWS account nell'elemento. `Condition` L'espressione nell'`Condition`elemento sure è autorizzata AWS Serverless Application Repository solo ad accedere alle applicazioni dall'account specificato AWS . Per ulteriori informazioni sulle dichiarazioni politiche, consulta il [riferimento agli elementi delle policy IAM JSON](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html) nella *IAM User Guide*.

------
#### [ JSON ]

****  

     ```
     {
         "Version":"2012-10-17",		 	 	 
         "Statement": [
             {
                 "Effect": "Allow",
                 "Principal": {
                     "Service":  "serverlessrepo.amazonaws.com"
                 },
                 "Action": "s3:GetObject",
                 "Resource": "arn:aws:s3:::bucketname/*",
                 "Condition" : {
                     "StringEquals": {
                         "aws:SourceAccount": "123456789012"
                     }
                 }
             }
         ]
     }
     ```

------

  1. Seleziona il pulsante **Save** (Salva).

### Procedura
<a name="create-new-application"></a>

Creare una nuova applicazione in AWS Serverless Application Repository utilizzando la procedura seguente.

**Per creare una nuova applicazione in AWS Serverless Application Repository**

1. Aprire la [console AWS Serverless Application Repository](https://console.aws.amazon.com/serverlessrepo/home) e selezionare **Publish applications (Pubblica applicazioni)**.

1. Nella pagina **Publish an application (Pubblica un'applicazione)** immettere le seguenti informazioni sull'applicazione e quindi scegliere **Publish application (Pubblica applicazione)**:    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/serverlessrepo/latest/devguide/serverlessrepo-how-to-publish.html)

## Condivisione di un'applicazione
<a name="share-application"></a>

Le applicazioni pubblicate possono avere autorizzazioni impostate in una delle tre seguenti categorie:
+ **Private (impostazione predefinita)**: applicazioni create con lo stesso account e non condivise con nessun altro AWS account. Solo i consumatori che condividono il tuo AWS account sono autorizzati a distribuire applicazioni private.
+ **Condivise privatamente**: applicazioni che l'editore ha esplicitamente condiviso con un set specifico di AWS account o con AWS account di un'organizzazione. AWS I consumatori sono autorizzati a distribuire applicazioni che sono state condivise con il proprio AWS account o l'organizzazione. AWS Per ulteriori informazioni in merito AWS Organizations, consulta la *[Guida per l'AWS Organizations utente](https://docs.aws.amazon.com/organizations/latest/userguide/)*.
+ **Condivise pubblicamente**: applicazioni che l'editore ha condiviso con tutti. Tutti i consumatori hanno l'autorizzazione per distribuire qualsiasi applicazione condivisa pubblicamente.

Dopo aver pubblicato un'applicazione su AWS Serverless Application Repository, per impostazione predefinita questa è impostata come **privata**. Questa sezione mostra come condividere un'applicazione in privato con AWS account specifici o un' AWS organizzazione o condividerla pubblicamente con tutti.

### Condivisione di un'applicazione tramite la console
<a name="share-application-console"></a>

Hai due opzioni per condividere la tua applicazione con altri: 1) Condividerla con AWS account specifici o con gli AWS account all'interno della tua AWS organizzazione oppure 2) Condividerla pubblicamente con tutti. Per ulteriori informazioni in merito AWS Organizations, consulta la *[Guida AWS Organizations per l'utente](https://docs.aws.amazon.com/organizations/latest/userguide/)*.

**Opzione 1: condividere l'applicazione con AWS account o account specifici all'interno AWS dell'organizzazione**

1. Apri la [AWS Serverless Application Repository console](https://console.aws.amazon.com/serverlessrepo/home).

1. Nel riquadro di navigazione, selezionare **Published Applications (Applicazioni pubblicate)** per visualizzare l'elenco delle applicazioni create.

1. Scegliere l'applicazione che si intende condividere.

1. Scegliere la scheda **Sharing (Condivisione)** .

1. Nella sezione **Application policy statements (Istruzioni di policy dell’applicazione)** scegliere il pulsante **Create Statement (Crea istruzione)** .

1. Nella finestra **Statement Configuration (Configurazione istruzione)** compilare i campi in base a come si desidera condividere l'applicazione.
**Nota**  
Se condividi con un'organizzazione, puoi solo specificare l'organizzazione di cui il tuo AWS account è membro. Se provi a specificare un' AWS organizzazione di cui non sei membro, si verificherà un errore.  
Per condividere la tua candidatura con la tua AWS organizzazione, devi riconoscere che l'`UnshareApplication`azione verrà aggiunta alla tua dichiarazione politica, nel caso in cui la condivisione debba essere revocata in futuro.

1. Seleziona il pulsante **Save** (Salva).

**Opzione 2: condividere pubblicamente l’applicazione con tutti**

1. Apri la [AWS Serverless Application Repository console](https://console.aws.amazon.com/serverlessrepo/home).

1. Nel riquadro di navigazione, selezionare **Published Applications (Applicazioni pubblicate)** per visualizzare l'elenco delle applicazioni create.

1. Scegliere l'applicazione che si intende condividere.

1. Scegliere la scheda **Sharing (Condivisione)** .

1. Nella sezione **Public Sharing (Condivisione pubblica)** scegliere il pulsante **Edit (Modifica)** .

1. In **Public Sharing (Condivisione pubblica)** scegliere il pulsante di opzione **Enabled (Abilitata)** .

1. Nella casella di testo digitare il nome dell'applicazione, quindi scegliere il pulsante **Save (Salva)** .

**Nota**  
Per condividere pubblicamente un'applicazione, entrambe le proprietà `SemanticVersion` e `LicenseUrl` devono essere impostate.

### Condivisione di un'applicazione tramite AWS CLI
<a name="share-application-cli"></a>

Per condividere un'applicazione utilizzando il AWS CLI , concedi le autorizzazioni utilizzando il `[put-application-policy](https://docs.aws.amazon.com/cli/latest/reference/serverlessrepo/put-application-policy.html)` comando per specificare gli AWS account con cui desideri condividerla come principali.

Per ulteriori informazioni sulla condivisione dell'applicazione tramite la AWS CLI, consulta. [AWS Serverless Application Repository Esempi di policy applicative](security_iam_resource-based-policy-examples.md)

## Annullamento della condivisione di un'applicazione
<a name="unshare-applications"></a>

Esistono due opzioni per annullare la condivisione di un'applicazione da un' AWS organizzazione:

1. L'autore dell'applicazione può rimuovere le autorizzazioni utilizzando il comando `[put-application-policy](https://docs.aws.amazon.com/cli/latest/reference/serverlessrepo/put-application-policy.html)`.

1. Un utente dell'*account di gestione* di un' AWS organizzazione può eseguire un'operazione di [annullamento della condivisione dell'applicazione](https://docs.aws.amazon.com/serverlessrepo/latest/devguide/applications-applicationid-unshare.html) su qualsiasi applicazione condivisa con l'organizzazione, anche se l'applicazione è stata pubblicata da un utente di un account diverso.
**Nota**  
Quando un'applicazione non viene condivisa da un' AWS organizzazione con l'operazione «annulla condivisione dell'applicazione», non può essere nuovamente condivisa con AWS l'organizzazione.

   Per ulteriori informazioni in merito AWS Organizations, consulta la Guida per l'*[AWS Organizations utente](https://docs.aws.amazon.com/organizations/latest/userguide/)*.

### Autorizzazioni di rimozione del publisher
<a name="unshare-applications-publisher"></a>

#### Autorizzazioni di rimozione del publisher mediante la console
<a name="unshare-application-publisher-console"></a>

Per annullare la condivisione di un'applicazione tramite Console di gestione AWS, rimuovi l'informativa sulla politica che la condivide con altri AWS account. A tale scopo, seguire queste fasi:

1. Apri la [AWS Serverless Application Repository console](https://console.aws.amazon.com/serverlessrepo/home).

1. Scegliere **Available Applications (Applicazioni disponibili)** nel riquadro di navigazione sinistro.

1. Scegliere l'applicazione per la quale si intende annullare la condivisione.

1. Scegliere la scheda **Sharing (Condivisione)** .

1. Nella sezione **Application policy statements (Istruzioni di policy dell’applicazione)** selezionare l'istruzione di policy che condivide l'applicazione con gli account da cui si desidera annullare la condivisione.

1. Scegli **Elimina**.

1. Verrà visualizzato un messaggio di conferma. Scegliere **Delete (Elimina)** di nuovo.

#### Publisher Rimozione delle autorizzazioni tramite AWS CLI
<a name="unshare-application-publisher-cli"></a>

Per annullare la condivisione di un'applicazione tramite AWS CLI, l'editore può rimuovere o modificare in altro modo le autorizzazioni utilizzando il `[put-application-policy](https://docs.aws.amazon.com/cli/latest/reference/serverlessrepo/put-application-policy.html)` comando per rendere privata l'applicazione o condividerla con un altro set di account. AWS 

Per ulteriori informazioni sulla modifica delle autorizzazioni tramite la AWS CLI, consulta. [AWS Serverless Application Repository Esempi di policy applicative](security_iam_resource-based-policy-examples.md)

### Account di gestione: annullamento della condivisione di un'applicazione
<a name="unshare-applications-management"></a>

#### Account di gestione: annullamento della condivisione di un'applicazione da un' AWS organizzazione tramite la console
<a name="unshare-application-management-console"></a>

Per annullare la condivisione di un'applicazione da un' AWS organizzazione tramite Console di gestione AWS, un utente dell'*account di gestione* può effettuare le seguenti operazioni:

1. Apri la [AWS Serverless Application Repository console](https://console.aws.amazon.com/serverlessrepo/home).

1. Scegliere **Available Applications (Applicazioni disponibili)** nel riquadro di navigazione sinistro.

1. Nel riquadro dell'applicazione, scegliere **Unshare (Annulla condivisione)**.

1. Nella finestra di annullamento della condivisione confermare che si desidera annullare la condivisione dell'applicazione immettendo l'ID del organizzazione e il nome dell'applicazione, quindi selezionare **Save (Salva)**.

#### Account di gestione: annullamento della condivisione di un'applicazione da un' AWS organizzazione tramite AWS CLI
<a name="unshare-application-management-cli"></a>

Per annullare la condivisione di un'applicazione da un' AWS organizzazione, un utente dell'*account di gestione* può eseguire il `aws serverlessrepo unshare-application` comando.

Il comando seguente annulla la condivisione di un'applicazione da un' AWS organizzazione, dove si *application-id* trova l'Amazon Resource Name (ARN) dell'applicazione *organization-id* e l'ID AWS dell'organizzazione:

```
1. aws serverlessrepo unshare-application --application-id application-id --organization-id organization-id
```

## Eliminazione di un'applicazione
<a name="deleting-applications"></a>

È possibile eliminare le applicazioni AWS Serverless Application Repository da utilizzando la Console di gestione AWS o la AWS SAM CLI.

### Eliminazione di un'applicazione (console)
<a name="deleting-application-through-aws-console"></a>

Per eliminare un'applicazione pubblicata tramite Console di gestione AWS, effettuate le seguenti operazioni.

1. Apri la [AWS Serverless Application Repository console](https://console.aws.amazon.com/serverlessrepo/home).

1. In **le mie applicazioni**, selezionare l'applicazione da eliminare.

1. Nella pagina dei dettagli dell'applicazione, scegli **Elimina applicazione**. 

1. Scegli **Elimina applicazione** per completare l'eliminazione.

### Eliminazione di un'applicazione (AWS CLI)
<a name="deleting-application-through-cli"></a>

Per eliminare un'applicazione pubblicata utilizzando il AWS CLI, esegui il `[aws serverlessrepo delete-application](https://docs.aws.amazon.com/cli/latest/reference/serverlessrepo/delete-application.html)` comando.

Il comando seguente elimina un'applicazione, dove `application-id` è l’Amazon Resource Name (ARN) dell'applicazione:

```
1. aws serverlessrepo delete-application --application-id application-id
```

# Pubblicazione di una nuova versione di un'applicazione esistente
<a name="serverlessrepo-how-to-publish-new-version"></a>

Questa sezione mostra come pubblicare una nuova versione di un'applicazione esistente su AWS Serverless Application Repository utilizzando la AWS SAM CLI o il. Console di gestione AWS Per istruzioni sulla pubblicazione di una nuova applicazione, consulta [Pubblicazione delle applicazioni](serverlessrepo-how-to-publish.md).

## Pubblicazione di una nuova versione di un'applicazione esistente (AWS CLI)
<a name="serverlessrepo-how-to-publish-new-version-cli"></a>

Il modo più semplice per pubblicare una nuova versione di un'applicazione esistente consiste nell'utilizzare un set di comandi AWS SAM CLI. Per ulteriori informazioni, consulta [Pubblicazione di un'applicazione utilizzando la AWS SAM CLI](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-sam-template-publishing-applications.html) nella *AWS Serverless Application Model (AWS SAM) Developer* Guide.

## Pubblicazione di una nuova versione di un'applicazione esistente (console)
<a name="serverlessrepo-how-to-publish-new-version-console"></a>

Per pubblicare una nuova versione di un'applicazione precedentemente pubblicata, attieniti alla seguente procedura:

1. Apri la [AWS Serverless Application Repository console](https://console.aws.amazon.com/serverlessrepo/home).

1. Nel riquadro di navigazione, selezionare **My Applications (Le mie applicazioni)** per visualizzare l'elenco delle applicazioni create.

1. Scegliere l'applicazione di cui si intende pubblicare una nuova versione.

1. Selezionare **Publish new version** (Pubblica nuova versione).

1. In **Versions (Versioni)**, immettere le seguenti informazioni sull'applicazione:    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/serverlessrepo/latest/devguide/serverlessrepo-how-to-publish-new-version.html)

1. Scegliere **Publish version (Pubblica versione)**.