

Questa è la AWS CDK v2 Developer Guide. Il vecchio CDK v1 è entrato in manutenzione il 1° giugno 2022 e ha terminato il supporto il 1° giugno 2023.

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

# AWS Bandiere con funzionalità CDK
<a name="featureflags"></a>

Il AWS CDK utilizza i *flag di funzionalità* per abilitare comportamenti potenzialmente negativi in una versione. I flag vengono memorizzati come valori di [contesto e i valori AWS CDK](context.md) in (or). `cdk.json` `~/.cdk.json` Non vengono rimossi dai comandi `cdk context --reset` o`cdk context --clear`.

I flag delle funzionalità sono disabilitati per impostazione predefinita. I progetti esistenti che non specificano il flag continueranno a funzionare come prima con le versioni successive di AWS CDK. I nuovi progetti creati utilizzando i flag `cdk init` includono che abilitano tutte le funzionalità disponibili nella versione che ha creato il progetto. Modifica `cdk.json` per disabilitare tutti i flag per i quali preferisci il comportamento precedente. È inoltre possibile aggiungere flag per abilitare nuovi comportamenti dopo l'aggiornamento del CDK. AWS 

[Un elenco di tutti i flag di funzionalità correnti è disponibile nel repository CDK in Feature\$1flags.md. AWS GitHub ](https://github.com/aws/aws-cdk/blob/main/packages/aws-cdk-lib/cx-api/FEATURE_FLAGS.md) Per una descrizione di tutte le `CHANGELOG` nuove funzionalità aggiunte in quella versione, consulta la sezione relativa a una determinata versione.

## Ripristino del comportamento v1
<a name="featureflags-disabling"></a>

In CDK v2, le impostazioni predefinite per alcuni flag di funzionalità sono state modificate rispetto alla v1. È possibile impostarli su per ripristinare il comportamento specifico di CDK `false` v1. AWS Utilizzate il `cdk diff` comando per controllare le modifiche al modello sintetizzato per vedere se qualcuno di questi flag è necessario.

 `@aws-cdk/core:newStyleStackSynthesis`   
Usa il nuovo metodo di sintesi dello stack, che presuppone risorse bootstrap con nomi noti. Richiede un [bootstrap moderno](bootstrapping.md), ma a sua volta consente la CI/CD tramite CDK Pipelines e le distribuzioni tra [account preconfigurate](cdk-pipeline.md).

 `@aws-cdk/aws-apigateway:usagePlanKeyOrderInsensitiveId`   
Se la tua applicazione utilizza più chiavi API Amazon API Gateway e le associa a piani di utilizzo.

 `@aws-cdk/aws-rds:lowercaseDbIdentifier`   
Se la tua applicazione utilizza istanze di database Amazon RDS o cluster di database e specifica esplicitamente l'identificatore per questi.

 `@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021`   
Se la tua applicazione utilizza la politica di sicurezza TLS\$1V1\$12\$12019 con le distribuzioni Amazon. CloudFront CDK v2 utilizza la politica di sicurezza .2\$12021 per impostazione predefinita. TLSv1

 `@aws-cdk/core:stackRelativeExports`   
Se l'applicazione utilizza più stack e si fa riferimento alle risorse di uno stack all'altro, ciò determina se viene utilizzato un percorso assoluto o relativo per costruire le esportazioni. AWS CloudFormation 

 `@aws-cdk/aws-lambda:recognizeVersionProps`   
Se impostato su`false`, il CDK include i metadati quando rileva se una funzione Lambda è cambiata. Ciò può causare errori di distribuzione quando sono stati modificati solo i metadati, poiché non sono consentite versioni duplicate. Non è necessario ripristinare questo flag se hai apportato almeno una modifica a tutte le funzioni Lambda dell'applicazione.

La sintassi per ripristinare questi flag è mostrata qui. `cdk.json`

```
{
  "context": {
    "@aws-cdk/core:newStyleStackSynthesis": false,
    "@aws-cdk/aws-apigateway:usagePlanKeyOrderInsensitiveId": false,
    "@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021": false,
    "@aws-cdk/aws-rds:lowercaseDbIdentifier": false,
    "@aws-cdk/core:stackRelativeExports": false,
    "@aws-cdk/aws-lambda:recognizeVersionProps": false
  }
}
```