

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

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

Valida os dados em relação AWS CloudFormation Guard às regras para determinar o sucesso ou o fracasso.

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

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

## Parâmetros
<a name="cfn-guard-validate-flags"></a>

`-a`, `--alphabetical`

Valida arquivos em um diretório ordenado alfabeticamente.

`-h`, `--help`

Imprime informações de ajuda.

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

Valida arquivos em um diretório ordenado pelos horários da última modificação.

`-P`, `--payload`

Forneça regras e dados no seguinte formato JSON por meio `stdin` de:

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

Por exemplo:

```
{"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\"" ]}
```

Para “regras”, especifique uma lista da versão da string dos arquivos de regras. Para “dados”, especifique uma lista da versão da string dos arquivos de dados.

Quando `--payload` é especificado `--rules` e `--data` não pode ser especificado.

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

Imprime a saída no formato JSON.

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

Mostra a falha da cláusula, incluindo um resumo.

`-V`, `--version`

Imprime as informações da versão.

`-v`, `--verbose`

Aumenta a verbosidade da saída. Pode ser especificado várias vezes.

`-z`, `--structured`

Imprime uma lista de formatos de saída estruturados e válidosJSON/YAML. This argument conflicts with the following arguments: verbose, print-json, show-summary: all/fail/pass/skip: single-line-summary

## Opções
<a name="cfn-guard-validate-options"></a>

`-d`, `--data` (sequência de caracteres)

Fornece um arquivo de dados ou diretório de arquivos de dados em JSON ou YAML. Suporta a passagem de vários valores usando essa opção repetidamente.

Exemplo: `--data template1.yaml --data ./data-dir1 --data template2.yaml`

Para argumentos de diretório como os `data-dir1` acima, o escaneamento só é suportado para arquivos com as seguintes extensões: .yaml, .yml, .json, .jsn, .template

Se você especificar o `--payload` sinalizador, não especifique a `--data` opção.

`-i`, `--input-parameters` (sequência de caracteres)

Fornece um arquivo de parâmetros ou diretório de arquivos de parâmetros em JSON ou YAML que especifica quaisquer parâmetros adicionais a serem usados junto com os arquivos de dados a serem usados como um contexto combinado. Todos os arquivos de parâmetros passados como entrada são mesclados e esse contexto combinado é novamente mesclado com cada arquivo passado como argumento para. `data` Devido a isso, espera-se que cada arquivo contenha propriedades mutuamente exclusivas, sem qualquer sobreposição. Suporta a passagem de vários valores usando essa opção repetidamente.

Para argumentos de diretório, a varredura só é compatível com arquivos com as seguintes extensões: .yaml, .yml, .json, .jsn, .template

`-o`, `--output-format` (sequência de caracteres)

Especifica o formato da saída.

*Padrão*: `single-line-summary`

*Valores permitidos*: `json` \| `yaml` \| `single-line-summary` \| `junit` \| `sarif`

`-r`, `--rules` (sequência de caracteres)

Fornece um arquivo de regras ou um diretório de arquivos de regras. Suporta a passagem de vários valores usando essa opção repetidamente.

Exemplo: `--rules rule1.guard --rules ./rules-dir1 --rules rule2.guard`

Para argumentos de diretório como os `rules-dir1` acima, a varredura só é suportada para arquivos com as seguintes extensões: .guard, .ruleset

Se você especificar o `--payload` sinalizador, não especifique a `--rules` opção.

`--show-summary` (string)

Controla se a tabela de resumo precisa ser exibida. `--show-summary fail`(padrão) ou `--show-summary pass,fail` (mostre apenas as regras aprovadas ou reprovadas) ou `--show-summary none` (para desativá-las) ou `--show-summary all` (para mostrar todas as regras aprovadas, reprovadas ou ignoradas).

*Padrão*: `fail`

*Valores permitidos*: `none` \| `all` \| `pass` \| `fail` \| `skip`

`-t`, `--type` (sequência de caracteres)

Fornece o formato dos seus dados de entrada. Quando você especifica o tipo de dados de entrada, o Guard exibe os nomes lógicos dos recursos do CloudFormation modelo na saída. Por padrão, o Guard exibe caminhos e valores de propriedades, como`Property [/Resources/vol2/Properties/Encrypted`.

*Valores permitidos*: `CFNTemplate`

## Exemplo
<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 o Guard validar com êxito os modelos, o `validate` comando retornará um status de saída de `0` (`$?`em bash). Se o Guard identificar uma violação de regra, o `validate` comando retornará um relatório de status das regras que falharam.

```
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".]
```

## Consulte também
<a name="cfn-guard-validate-see-also"></a>
+ [Validando os dados de entrada de acordo com as regras do Guard](validating-rules.md)
+ [Usando parâmetros de entrada com regras do Guard](using-input-parameters.md)