

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

# CloudFormation sezioni modello
<a name="template-anatomy"></a>

Ogni CloudFormation modello è composto da una o più sezioni, ognuna delle quali ha uno scopo specifico. 

La sezione **Risorse** è obbligatoria in ogni CloudFormation modello e costituisce il nucleo del modello. Questa sezione specifica le risorse dello stack e le relative proprietà, ad esempio un' EC2 istanza Amazon o un bucket Amazon S3. Ogni risorsa è definita con un ID logico, un tipo e dettagli di configurazione specifici univoci. 

La sezione **Parametri**, sebbene facoltativa, svolge un ruolo importante per rendere i modelli più flessibili. Consente infatti agli utenti di passare valori in runtime durante la creazione o l’aggiornamento di uno stack. Puoi fare riferimento a questi parametri nelle sezioni `Resources` e `Outputs`, abilitando la personalizzazione senza alterare il modello stesso. Ad esempio, puoi utilizzare i parametri per specificare tipi di istanze o impostazioni di ambiente che variano tra le implementazioni.

La sezione **Output**, anch’essa facoltativa, definisce i valori restituiti durante la visualizzazione delle proprietà di uno stack. Gli output forniscono informazioni utili, ad esempio identificatori di risorse URLs, che possono essere utilizzate per scopi operativi o per l'integrazione con altri stack. Questa sezione aiuta gli utenti a recuperare e utilizzare dettagli importanti sulle risorse create dal modello.

Altre sezioni opzionali includono le **Mappature**, che funzionano come tabelle di ricerca per gestire i valori condizionali. Con le mappature, è possibile definire coppie chiave-valore e utilizzarle con la funzione intrinseca `Fn::FindInMap` nelle sezioni `Resources` e `Outputs`. Ciò è utile per scenari in cui è necessario modificare le configurazioni in base a condizioni come l'ambiente. Regione AWS 

Le sezioni **Metadati** e **Regole**, sebbene utilizzate meno frequentemente, forniscono funzionalità aggiuntive. `Metadata` può includere informazioni aggiuntive sul modello, mentre `Rules` convalida un parametro o una combinazione di parametri durante la creazione o l’aggiornamento dello stack, assicurandosi che soddisfino criteri specifici. La sezione **Condizioni** migliora ulteriormente la flessibilità, perché controlla se alcune risorse sono state creati o se alle proprietà è stato assegnato un valore in base a condizioni come il tipo di ambiente.

Infine, la sezione **Trasforma** viene utilizzata per applicare le macro durante l’elaborazione del modello. Per le applicazioni serverless (chiamate anche applicazioni Lambda), specifica la versione del [Serverless Application AWS Model AWS (](https://github.com/awslabs/serverless-application-specification)SAM) da utilizzare. Quando si specifica una trasformazione, è possibile utilizzare la AWS SAM sintassi per dichiarare le risorse nel modello. Il modello definisce la sintassi che puoi utilizzare e la relativa modalità di elaborazione. È inoltre possibile utilizzare la `AWS::Include` trasformazione per includere frammenti di modello archiviati separatamente dal modello principale. CloudFormation 

I seguenti argomenti forniscono ulteriori informazioni ed esempi per l’utilizzo di ciascuna sezione.

**Topics**
+ [Resources](resources-section-structure.md)
+ [Parameters](parameters-section-structure.md)
+ [Outputs](outputs-section-structure.md)
+ [Mappings](mappings-section-structure.md)
+ [Metadata](metadata-section-structure.md)
+ [Rules](rules-section-structure.md)
+ [Conditions](conditions-section-structure.md)
+ [Transform](transform-section-structure.md)
+ [Versione del formato](format-version-structure.md)
+ [Description](template-description-structure.md)