

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

# validate
<a name="cfn-guard-validate"></a>

Convalida i dati in AWS CloudFormation Guard base alle regole per determinare il successo o il fallimento.

## Sintassi
<a name="cfn-guard-validate-synopsis"></a>

```
cfn-guard validate
--data <value>
--output-format <value>
--rules <value>
--show-summary <value>
--type <value>
```

## Parameters
<a name="cfn-guard-validate-flags"></a>

`-a`, `--alphabetical`

Convalida i file in una directory in ordine alfabetico.

`-h`, `--help`

Stampa le informazioni di aiuto.

`-m`, `--last-modified`

Convalida i file in una directory ordinata in base all'ora dell'ultima modifica.

`-P`, `--payload`

Fornisci regole e dati nel seguente formato JSON tramite: `stdin`

```
{"rules":["<rules 1>", "<rules 2>", ...], "data":["<data 1>", "<data 2>", ...]}
```

Esempio:

```
{"data": ["{\"Resources\":{\"NewVolume\":{\"Type\":\"AWS::EC2::Volume\",\"Properties\":{\"Size\":500,\"Encrypted\":false,\"AvailabilityZone\":\"us-west-2b\"}},\"NewVolume2\":{\"Type\":\"AWS::EC2::Volume\",\"Properties\":{\"Size\":50,\"Encrypted\":false,\"AvailabilityZone\":\"us-west-2c\"}}},\"Parameters\":{\"InstanceName\":\"TestInstance\"}}","{\"Resources\":{\"NewVolume\":{\"Type\":\"AWS::EC2::Volume\",\"Properties\":{\"Size\":500,\"Encrypted\":false,\"AvailabilityZone\":\"us-west-2b\"}},\"NewVolume2\":{\"Type\":\"AWS::EC2::Volume\",\"Properties\":{\"Size\":50,\"Encrypted\":false,\"AvailabilityZone\":\"us-west-2c\"}}},\"Parameters\":{\"InstanceName\":\"TestInstance\"}}"], "rules" : [ "Parameters.InstanceName == \"TestInstance\"","Parameters.InstanceName == \"TestInstance\"" ]}
```

Per «regole», specifica un elenco di versioni in formato stringa dei file delle regole. Per «dati», specifica un elenco di versioni in formato stringa dei file di dati.

Quando `--payload` è specificato `--rules` e `--data` non può essere specificato.

`-p`, `--print-json`

Stampa l'output in formato JSON.

`-s`, `--show-clause-failures`

Mostra l'errore della clausola, incluso un riepilogo.

`-V`, `--version`

Stampa le informazioni sulla versione.

`-v`, `--verbose`

Aumenta la verbosità dell'output. Può essere specificato più volte.

`-z`, `--structured`

Stampa un elenco di formati di output strutturati e validiJSON/YAML. This argument conflicts with the following arguments: verbose, print-json, show-summary: all/fail/pass/skip: single-line-summary

## Opzioni
<a name="cfn-guard-validate-options"></a>

`-d`, `--data` (stringa)

Fornisce un file di dati o una directory di file di dati in JSON o YAML. Supporta il passaggio di più valori utilizzando ripetutamente questa opzione.

Ad esempio: `--data template1.yaml --data ./data-dir1 --data template2.yaml`

Per gli argomenti di directory come quelli `data-dir1` precedenti, la scansione è supportata solo per i file con le seguenti estensioni: .yaml, .yml, .json, .jsn, .template

Se specificate il flag, non specificate l'opzione. `--payload` `--data`

`-i`, `--input-parameters` (stringa)

Fornisce un file di parametri o una directory di file di parametri in JSON o YAML che specifica eventuali parametri aggiuntivi da utilizzare insieme ai file di dati da utilizzare come contesto combinato. Tutti i file di parametri passati come input vengono uniti e questo contesto combinato viene nuovamente unito a ogni file passato come argomento per. `data` Per questo motivo, si prevede che ogni file contenga proprietà che si escludono a vicenda, senza sovrapposizioni. Supporta il passaggio di più valori utilizzando ripetutamente questa opzione.

Per gli argomenti delle directory, la scansione è supportata solo per i file con le seguenti estensioni: .yaml, .yml, .json, .jsn, .template

`-o``--output-format`, (stringa)

Specificate il formato per l'output.

*Default*: `single-line-summary`

*Valori consentiti*: `json` \| `yaml` \| `single-line-summary` \| `junit` \| `sarif`

`-r`, `--rules` (stringa)

Fornisce un file di regole o una directory di file di regole. Supporta il passaggio di più valori utilizzando ripetutamente questa opzione.

Ad esempio: `--rules rule1.guard --rules ./rules-dir1 --rules rule2.guard`

Per gli argomenti di directory come quelli `rules-dir1` precedenti, la scansione è supportata solo per i file con le seguenti estensioni: .guard, .ruleset

Se specificate la `--payload` bandiera, non specificate l'opzione. `--rules`

`--show-summary` (Stringa)

Controlla se la tabella riassuntiva deve essere visualizzata. `--show-summary fail`(impostazione predefinita) o `--show-summary pass,fail` (mostra solo le regole che hanno avuto esito positivo o negativo) o `--show-summary none` (per disattivarla) o `--show-summary all` (per mostrare tutte le regole superate, non riuscite o ignorate).

*Default*: `fail`

*Valori consentiti*: `none` \| `all` \| `pass` \| `fail` \| `skip`

`-t`, `--type` (stringa)

Fornisce il formato dei dati di input. Quando si specifica il tipo di dati di input, Guard visualizza i nomi logici delle risorse del CloudFormation modello nell'output. Per impostazione predefinita, Guard visualizza i percorsi e i valori delle proprietà, ad esempio`Property [/Resources/vol2/Properties/Encrypted`.

*Allowed values*: `CFNTemplate`

## Esempio
<a name="cfn-guard-validate-examples"></a>

```
cfn-guard validate --data {{example.json}} --rules {{rules.guard}}
```

## Output
<a name="cfn-guard-validate-output"></a>

Se Guard convalida correttamente i modelli, il `validate` comando restituisce uno stato di uscita di `0` (`$?`in bash). Se Guard identifica una violazione della regola, il `validate` comando restituisce un rapporto sullo stato delle regole che non sono riuscite.

```
example.json Status = FAIL
FAILED rules
rules.guard/policy_effect_is_deny    FAIL
---
Evaluation of rules rules.guard against data example.json 
--
Property [/path/to/Effect] in data [example.json] is not compliant with [policy_effect_is_deny] because provided value ["Allow"] did not match expected value ["Deny"]. Error Message [ Policy statement "Effect" must be "Deny".]
```

## Consulta anche
<a name="cfn-guard-validate-see-also"></a>
+ [Convalida dei dati di input rispetto alle regole di Guard](validating-rules.md)
+ [Utilizzo dei parametri di input con le regole Guard](using-input-parameters.md)