

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# AWS CloudFormation Guard Parameter CLI dan referensi perintah
<a name="cfn-guard-command-reference"></a>

Parameter dan perintah global berikut tersedia melalui antarmuka baris AWS CloudFormation Guard perintah (CLI).

**Topics**
+ [Penjaga parameter global CLI](cfn-guard-global-parameters.md)
+ [parse-pohon](cfn-guard-parse-tree.md)
+ [aturan](cfn-guard-rulegen.md)
+ [pengujian](cfn-guard-test.md)
+ [validasi](cfn-guard-validate.md)

# Penjaga parameter global CLI
<a name="cfn-guard-global-parameters"></a>

Anda dapat menggunakan parameter berikut dengan perintah AWS CloudFormation Guard CLI apa pun.

`-h`, `--help`

Mencetak informasi bantuan.

`-V`, `--version`

Mencetak informasi versi.

# parse-pohon
<a name="cfn-guard-parse-tree"></a>

Menghasilkan pohon parse untuk AWS CloudFormation Guard aturan yang ditentukan dalam file aturan.

## Sintaks
<a name="cfn-guard-parse-tree-synopsis"></a>

```
cfn-guard parse-tree 
--output <value>
--rules <value>
```

## Parameter
<a name="cfn-guard-parse-tree-flags"></a>

`-h`, `--help`

Mencetak informasi bantuan.

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

Mencetak output dalam format JSON.

`-y`, `--print-yaml`

Mencetak output dalam format YAMAL.

`-V`, `--version`

Mencetak informasi versi.

## Opsi
<a name="cfn-guard-parse-tree-options"></a>

`-o`, `--output`

Menulis pohon yang dihasilkan ke file output.

`-r`, `--rules`

Menyediakan file aturan.

## Contoh
<a name="cfn-guard-parse-tree-examples"></a>

```
cfn-guard parse-tree --output output.json --rules rules.guard
```

# aturan
<a name="cfn-guard-rulegen"></a>

Mengambil file AWS CloudFormation template berformat JSON atau YAML dan membuat otomatis seperangkat AWS CloudFormation Guard aturan yang cocok dengan properti sumber daya template. Perintah ini adalah cara yang berguna untuk memulai penulisan aturan atau untuk membuat ready-to-use aturan dari template bagus yang dikenal.

## Sintaks
<a name="cfn-guard-rulgen-synopsis"></a>

```
cfn-guard rulegen
--output <value>  
--template <value>
```

## Parameter
<a name="cfn-guard-rulegen-flags"></a>

`-h`, `--help`

Mencetak informasi bantuan.

`-V`, `--version`

Mencetak informasi versi.

## Opsi
<a name="cfn-guard-rulegen-options"></a>

`-o`, `--output`

Menulis aturan yang dihasilkan ke file output. Mengingat potensi ratusan atau bahkan ribuan aturan muncul, kami sarankan untuk menggunakan opsi ini.

`-t`, `--template`

Menyediakan path ke file CloudFormation template dalam format JSON atau YAMAL.

## Contoh
<a name="cfn-guard-rulegen-examples"></a>

```
cfn-guard rulegen --output rules.guard --template template.json
```

# pengujian
<a name="cfn-guard-test"></a>

Memvalidasi file AWS CloudFormation Guard aturan terhadap file pengujian unit Guard dalam format JSON atau YAMAL untuk menentukan keberhasilan aturan individual.

## Sintaks
<a name="cfn-guard-test-synopsis"></a>

```
cfn-guard test 
--rules-file <value>
--test-data <value>
```

## Parameter
<a name="cfn-guard-test-flags"></a>

`-a`, `--alphabetical`

Urutkan menurut abjad di dalam direktori.

`-h`, `--help`

Mencetak informasi bantuan.

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

Mengurutkan berdasarkan waktu modifikasi terakhir dalam direktori

`-V`, `--version`

Mencetak informasi versi.

`-v`, `--verbose`

Meningkatkan verbositas output. Dapat ditentukan beberapa kali.

Output verbose mengikuti struktur file aturan Guard. Setiap blok dalam file aturan adalah blok dalam output verbose. Blok paling atas adalah setiap aturan. Jika ada `when` kondisi yang bertentangan dengan aturan, mereka muncul sebagai blok kondisi saudara kandung.

## Opsi
<a name="cfn-guard-test-options"></a>

`-d`, `--dir`

Berikan direktori root untuk aturan.

`-o`, `--output-format`

Tentukan format di mana output harus ditampilkan.

*Default*: `single-line-summary`

*Nilai yang diizinkan*: `json` \$1 `yaml` \$1 `single-line-summary` \$1 `junit`

`-r`, `--rules-file`

Memberikan nama file aturan.

`-t`, `--test-data`

Menyediakan nama file atau direktori untuk file data dalam format JSON atau YAMAL.

## Contoh
<a name="cfn-guard-test-examples"></a>

```
cfn-guard test --rules-file rules.guard --test-data example.json
```

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

```
PASS|FAIL Expected Rule = rule_name, Status = SKIP|FAIL|PASS, Got Status = SKIP|FAIL|PASS
```

## Lihat juga
<a name="cfn-guard-test-see-also"></a>

[Aturan Pengujian Guard](testing-rules.md)

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

Memvalidasi data terhadap AWS CloudFormation Guard aturan untuk menentukan keberhasilan atau kegagalan.

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

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

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

`-a`, `--alphabetical`

Memvalidasi file dalam direktori yang diurutkan menurut abjad.

`-h`, `--help`

Mencetak informasi bantuan.

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

Memvalidasi file dalam direktori yang diurutkan berdasarkan waktu modifikasi terakhir.

`-P`, `--payload`

Berikan aturan dan data dalam format JSON berikut melalui`stdin`:

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

Contoh:

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

Untuk “aturan”, tentukan daftar versi string dari file aturan. Untuk “data”, tentukan daftar versi string file data.

Kapan `--payload` ditentukan `--rules` dan `--data` tidak dapat ditentukan.

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

Mencetak output dalam format JSON.

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

Menunjukkan kegagalan klausa termasuk ringkasan.

`-V`, `--version`

Mencetak informasi versi.

`-v`, `--verbose`

Meningkatkan verbositas output. Dapat ditentukan beberapa kali.

`-z`, `--structured`

Mencetak daftar format output yang terstruktur dan validJSON/YAML. This argument conflicts with the following arguments: verbose, print-json, show-summary: all/fail/pass/skip: single-line-summary

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

`-d`, `--data` (string)

Menyediakan file data atau direktori file data di JSON atau YAMAL. Mendukung melewati beberapa nilai dengan menggunakan opsi ini berulang kali.

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

Untuk argumen direktori seperti `data-dir1` di atas, pemindaian hanya didukung untuk file dengan ekstensi berikut: .yaml, .yml.json, .jsn, .template

Jika Anda menentukan `--payload` bendera, jangan tentukan `--data` opsi.

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

Menyediakan file parameter atau direktori file parameter di JSON atau YAMAL yang menentukan parameter tambahan untuk digunakan bersama dengan file data yang akan digunakan sebagai konteks gabungan. Semua file parameter yang diteruskan sebagai input digabungkan dan konteks gabungan ini digabungkan lagi dengan setiap file yang diteruskan sebagai argumen untuk. `data` Karena ini, setiap file diharapkan mengandung properti yang saling eksklusif, tanpa tumpang tindih. Mendukung melewati beberapa nilai dengan menggunakan opsi ini berulang kali.

Untuk argumen direktori, pemindaian hanya didukung untuk file dengan ekstensi berikut: .yaml, .yml.json, .jsn, .template

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

Menentukan format untuk output.

*Default*: `single-line-summary`

*Nilai yang diizinkan*: `json` \$1 `yaml` \$1 `single-line-summary` \$1 `junit` \$1 `sarif`

`-r`, `--rules` (string)

Menyediakan file aturan atau direktori file aturan. Mendukung melewati beberapa nilai dengan menggunakan opsi ini berulang kali.

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

Untuk argumen direktori seperti `rules-dir1` di atas, pemindaian hanya didukung untuk file dengan ekstensi berikut: .guard, .ruleset

Jika Anda menentukan `--payload` bendera, jangan tentukan `--rules` opsi.

`--show-summary`(tali)

Kontrol jika tabel ringkasan perlu ditampilkan. `--show-summary fail`(default) atau `--show-summary pass,fail` (hanya tampilkan aturan yang lulus/gagal) atau `--show-summary none` (untuk mematikannya) atau `--show-summary all` (untuk menampilkan semua aturan yang lulus, gagal, atau lewati).

*Default*: `fail`

*Nilai yang diizinkan*: `none` \$1 `all` \$1 `pass` \$1 `fail` \$1 `skip`

`-t`, `--type` (string)

Menyediakan format data input Anda. Saat Anda menentukan tipe data input, Guard menampilkan nama logis sumber daya CloudFormation template dalam output. Secara default, Guard menampilkan jalur dan nilai properti, seperti`Property [/Resources/vol2/Properties/Encrypted`.

*Nilai yang diizinkan*: `CFNTemplate`

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

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

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

Jika Guard berhasil memvalidasi template, `validate` perintah mengembalikan status keluar `0` (`$?`dalam bash). Jika Guard mengidentifikasi pelanggaran aturan, `validate` perintah mengembalikan laporan status aturan yang gagal.

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

## Lihat juga
<a name="cfn-guard-validate-see-also"></a>
+ [Memvalidasi data input terhadap aturan Guard](validating-rules.md)
+ [Menggunakan parameter input dengan aturan Guard](using-input-parameters.md)