

Avviso di fine del supporto: il 7 ottobre 2026, AWS terminerà il supporto per AWS Proton. Dopo il 7 ottobre 2026, non potrai più accedere alla AWS Proton console o AWS Proton alle risorse. L'infrastruttura implementata rimarrà intatta. Per ulteriori informazioni, consulta [AWS Proton Service Deprecation](https://docs.aws.amazon.com/proton/latest/userguide/proton-end-of-support.html) and Migration Guide.

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

# Infrastruttura dei componenti come file di codice
<a name="ag-components-iac"></a>

I file IAc (Component Infrastructure as Code) sono simili a quelli di altre AWS Proton risorse. Scopri qui alcuni dettagli specifici dei componenti. Per informazioni complete sulla creazione di file IAc per AWS Proton, vedere. [Creazione di modelli e creazione di pacchetti per AWS Proton](ag-template-authoring.md)

## Utilizzo dei parametri con i componenti
<a name="ag-components-iac.namespace"></a>

Lo spazio AWS Proton dei nomi dei parametri include alcuni parametri a cui un file IAc di servizio può fare riferimento per ottenere il nome e gli output di un componente associato. Lo spazio dei nomi include anche parametri a cui un file IAc del componente può fare riferimento per ottenere input, output e valori delle risorse dall'ambiente, dal servizio e dall'istanza del servizio a cui il componente è associato.

Un componente non dispone di input propri, ma riceve gli input dall'istanza di servizio a cui è collegato. Un componente può anche leggere gli output dell'ambiente.

Per ulteriori informazioni sull'utilizzo dei parametri nei file IAc del componente e del servizio associato, vedere. [Dettagli ed esempi dei parametri del file CloudFormation IAc del componente](comp-parameters.md) Per informazioni generali sui AWS Proton parametri e un riferimento completo allo spazio dei nomi dei parametri, vedere. [AWS Proton parametri](parameters.md)

## Creazione di file IAc robusti
<a name="ag-components-iac.robust"></a>

In qualità di amministratore, quando create una versione del modello di servizio, potete decidere se consentire alle istanze di servizio create a partire dalla versione del modello di avere componenti allegati. Vedi il [supportedComponentSources](https://docs.aws.amazon.com/proton/latest/APIReference/API_CreateServiceTemplateVersion.html#proton-CreateServiceTemplateVersion-request-supportedComponentSources)parametro dell'azione [CreateServiceTemplateVersion](https://docs.aws.amazon.com/proton/latest/APIReference/API_CreateServiceTemplateVersion.html)API nell'*AWS Proton API Reference.* Tuttavia, per tutte le future istanze di servizio, la persona che crea l'istanza decide se allegarvi o meno un componente e (nel caso di componenti definiti direttamente) l'autore del componente IaC è in genere una persona diversa, uno sviluppatore che utilizza il modello di servizio. Pertanto, non è possibile garantire che un componente venga collegato a un'istanza di servizio. Inoltre, non è possibile garantire l'esistenza di nomi di output di componenti specifici o la validità e la sicurezza dei valori di questi output.

AWS Proton e la sintassi Jinja vi aiutano a risolvere questi problemi e a creare solidi modelli di servizio che eseguono il rendering senza errori nei seguenti modi:
+ *AWS Proton filtri parametrici*: quando si fa riferimento alle proprietà di output dei componenti, è possibile utilizzare *filtri parametrici*, ossia modificatori che convalidano, filtrano e formattano i valori dei parametri. Per maggiori informazioni ed esempi, consulta [filtri parametrici per CloudFormation file IAc](parameter-filters.md).
+ *Proprietà singola predefinita*: quando si fa riferimento a una singola risorsa o proprietà di output di un componente, è possibile garantire che il rendering del modello di servizio non abbia esito negativo utilizzando il `default` filtro, con o senza un valore predefinito. Se il componente o uno specifico parametro di output a cui ti riferisci non esiste, viene invece renderizzato il valore predefinito (o una stringa vuota, se non hai specificato un valore predefinito) e il rendering ha esito positivo. Per ulteriori informazioni, consulta [Fornite valori predefiniti per riferimenti inesistenti](parameter-filters.md#parameter-filters.proton.default).

  Esempi:
  + `{{ service_instance.components.default.name | default("") }}`
  + `{{ service_instance.components.default.outputs.{{my-output}} | default("17") }}`
**Nota**  
Non confondete la `.default` parte dello spazio dei nomi, che designa i componenti definiti direttamente, con il `default` filtro, che fornisce un valore predefinito quando la proprietà referenziata non esiste.
+ *Riferimento all'intero oggetto*: quando si fa riferimento all'intero componente o alla raccolta degli output di un componente, AWS Proton restituisce un oggetto vuoto e quindi garantisce che il rendering del `{}` modello di servizio non abbia esito negativo. Non è necessario utilizzare alcun filtro. Assicurati di inserire il riferimento in un contesto che può accettare un oggetto vuoto o usa una `{{ if .. }}` condizione per verificare la presenza di un oggetto vuoto.

  Esempi:
  + `{{ service_instance.components.default }}`
  + `{{ service_instance.components.default.outputs }}`