

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

# Merekam Konfigurasi dengan AWS Config Sumber Daya Pihak Ketiga menggunakan AWS CLI
<a name="customresources"></a>

Rekam konfigurasi untuk sumber daya pihak ketiga atau jenis sumber daya khusus seperti pada server premis, alat pemantauan SAAS, dan sistem kontrol versi (seperti). GitHub

Anda dapat mempublikasikan data konfigurasi sumber daya pihak ketiga ke dalam AWS Config dan melihat serta memantau inventaris sumber daya dan riwayat konfigurasi menggunakan AWS Config konsol dan APIs. Anda dapat menggunakan AWS Config untuk mengelola semua sumber daya Anda dan mengevaluasi konfigurasi sumber daya untuk kepatuhan terhadap praktik terbaik menggunakan AWS Config aturan. Anda juga dapat membuat AWS Config aturan atau paket kesesuaian untuk mengevaluasi sumber daya pihak ketiga ini terhadap praktik terbaik, kebijakan internal, dan kebijakan peraturan. 

**catatan**  
Jika Anda telah mengonfigurasi AWS Config untuk merekam semua jenis sumber daya, maka sumber daya pihak ketiga yang dikelola (dibuat, diperbarui, atau dihapus) secara otomatis CloudFormation dilacak AWS Config sebagai item konfigurasi.

**Prasyarat:** Sumber daya pihak ketiga atau jenis sumber daya khusus harus didaftarkan menggunakan. CloudFormation

**Topics**
+ [Menambahkan Sumber Daya](customresources-adding.md)
+ [Merekam Item Konfigurasi](add-custom-resource-type-cli.md)
+ [Membaca Item Konfigurasi](view-custom-resource-type-cli.md)
+ [Menghapus Sumber Daya](delete-custom-resource-type.md)

# Menambahkan Sumber Daya Pihak Ketiga ke AWS Config
<a name="customresources-adding"></a>

Ikuti langkah-langkah ini untuk menambahkan sumber daya pihak ketiga AWS Config.

**Topics**
+ [Langkah 1: Siapkan Lingkungan Pengembangan Anda](#customresources-setupdevenvironment)
+ [Langkah 2: Modelkan Sumber Daya Anda](#customresources-modelresource)
+ [Langkah 3: Hasilkan Artefak](#generateartifactsforcfnsubmit)
+ [Langkah 4: Daftarkan Sumber Daya Anda](#customresources-registerresource)
+ [Langkah 5: Publikasikan Konfigurasi Sumber Daya](#customresources-publishresourceconfiguration)

## Langkah 1: Siapkan Lingkungan Pengembangan Anda
<a name="customresources-setupdevenvironment"></a>

Instal dan konfigurasikan CloudFormation AWS CLI. AWS CLI Ini memungkinkan Anda untuk memodelkan dan mendaftarkan sumber daya khusus Anda. Untuk informasi selengkapnya, lihat [Sumber Daya Kustom](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-custom-resources.html) dan [Apa itu Antarmuka Baris CloudFormation Perintah?](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/what-is-cloudformation-cli.html) .

## Langkah 2: Modelkan Sumber Daya Anda
<a name="customresources-modelresource"></a>

Buat skema penyedia sumber daya yang sesuai dengan dan memvalidasi konfigurasi jenis sumber daya.

1. Gunakan `init` perintah untuk membuat proyek penyedia sumber daya Anda dan menghasilkan file yang dibutuhkannya.

   ```
   $ cfn init
   Initializing new project
   ```

1. `init`Perintah meluncurkan wizard yang memandu Anda melalui pengaturan proyek, termasuk menentukan nama sumber daya. Untuk panduan ini, tentukan. `MyCustomNamespace::Testing::WordPress`

   ```
   Enter resource type identifier (Organization::Service::Resource): MyCustomNamespace::Testing::WordPress
   ```

1. Masukkan nama paket untuk sumber daya Anda.

   ```
   Enter a package name (empty for default 'com.custom.testing.wordpress'): com.custom.testing.wordpress 
   Initialized a new project in /workplace/user/custom-testing-wordpress
   ```
**catatan**  
Untuk menjamin bahwa setiap dependensi proyek diselesaikan dengan benar, Anda dapat mengimpor proyek yang dihasilkan ke IDE Anda dengan dukungan Maven.  
Misalnya, jika Anda menggunakan IntelliJ IDEA, Anda perlu melakukan hal berikut:  
Dari menu **File**, pilih **New**, lalu pilih **Project From Existing Sources**.
Arahkan ke direktori proyek
Dalam kotak dialog **Impor Proyek**, pilih **Impor proyek dari model eksternal** dan kemudian pilih **Maven**.
Pilih **Berikutnya** dan terima default apa pun untuk menyelesaikan pengimporan proyek.

1. Buka `mycustomnamespace-testing-wordpress.json` file yang berisi skema untuk sumber daya Anda. Salin dan tempel skema berikut ke dalam`mycustomnamespace-testing-wordpress.json`.

   ```
   {
     "typeName": "MyCustomNamespace::Testing::WordPress",
     "description": "An example resource that creates a website based on WordPress 5.2.2.",
     "properties": {
       "Name": {
         "description": "A name associated with the website.",
         "type": "string",
         "pattern": "^[a-zA-Z0-9]{1,219}\\Z",
         "minLength": 1, "maxLength": 219
       },
       "SubnetId": {
         "description": "A subnet in which to host the website.",
         "pattern": "^(subnet-[a-f0-9]{13})|(subnet-[a-f0-9]{8})\\Z",
         "type": "string"
       },
       "InstanceId": {
         "description": "The ID of the instance that backs the WordPress site.",
         "type": "string"
       },
       "PublicIp": {
         "description": "The public IP for the WordPress site.",
         "type": "string"
       }
     },
     "required": [ "Name", "SubnetId" ],
     "primaryIdentifier": [ "/properties/PublicIp", "/properties/InstanceId" ],
     "readOnlyProperties": [ "/properties/PublicIp", "/properties/InstanceId" ],
     "additionalProperties": false
   }
   ```

1. Validasi skema.

   ```
   $ cfn validate
   ```

1. Perbarui file yang dibuat secara otomatis dalam paket penyedia sumber daya untuk melihat pembaruan skema penyedia sumber daya. Setelah memulai proyek penyedia sumber daya, AWS CLI menghasilkan file pendukung dan kode untuk penyedia sumber daya. Regenerasi kode untuk melihat skema yang diperbarui.

   ```
   $ cfn generate
   ```
**catatan**  
Saat menggunakan Maven, sebagai bagian dari proses build, `generate` perintah dijalankan secara otomatis sebelum kode dikompilasi. Jadi perubahan Anda tidak akan pernah keluar dari sinkron dengan kode yang dihasilkan.  
Sadarilah CloudFormation CLI harus dalam Maven/the sistem lokasi dapat menemukan. Untuk informasi selengkapnya, lihat [Menyiapkan lingkungan untuk mengembangkan ekstensi](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/what-is-cloudformation-cli.html#resource-type-setup).

Untuk informasi selengkapnya tentang keseluruhan proses, lihat [Pemodelan Penyedia Sumber Daya untuk Digunakan di CloudFormation](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-model.html).

## Langkah 3: Hasilkan Artefak
<a name="generateartifactsforcfnsubmit"></a>

Jalankan perintah berikut untuk menghasilkan artefak untuk`cfn submit`.

```
$ mvn package
```

## Langkah 4: Daftarkan Sumber Daya Anda
<a name="customresources-registerresource"></a>

AWS Config tidak memerlukan penangan penyedia sumber daya untuk melakukan pelacakan konfigurasi untuk sumber daya Anda. Jalankan perintah berikut untuk mendaftarkan sumber daya Anda.

```
$ cfn submit
```

Untuk informasi selengkapnya, lihat [Mendaftarkan Penyedia Sumber Daya untuk Digunakan di CloudFormation Templat](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-register.html).

## Langkah 5: Publikasikan Konfigurasi Sumber Daya
<a name="customresources-publishresourceconfiguration"></a>

Tentukan konfigurasi untuk MyCustomNamespace: :Testing::WordPress.

```
{
  "Name": "MyWordPressSite",
  "SubnetId": "subnet-abcd0123",
  "InstanceId": "i-01234567",
  "PublicIp": "my-wordpress-site.com"
}
```

Tentukan id versi skema dari CloudFormation `DescribeType`. 

Di AWS Config, Anda dapat melihat apakah konfigurasi sumber daya ini diterima. Untuk mengevaluasi kepatuhan, Anda dapat menulis AWS Config aturan menggunakan sumber daya ini.

(Opsional) Untuk mengotomatiskan perekaman konfigurasi, terapkan kolektor konfigurasi periodik atau berbasis perubahan.

# Rekam Item Konfigurasi dengan AWS Config Sumber Daya Pihak Ketiga menggunakan AWS CLI
<a name="add-custom-resource-type-cli"></a>

Merekam item konfigurasi untuk sumber daya pihak ketiga atau jenis sumber daya khusus menggunakan prosedur berikut:

Pastikan Anda mendaftarkan jenis sumber daya `MyCustomNamespace::Testing::WordPress` dengan skema pencocokannya.

1. Buka jendela command prompt atau terminal.

1. Masukkan perintah berikut:

   ```
   aws configservice put-resource-config --resource-type MyCustomNamespace::Testing::WordPress --resource-id resource-001 --schema-version-id 00000001 --configuration  '{
     "Id": "resource-001",
     "Name": "My example custom resource.",
     "PublicAccess": false
   }'
   ```

**catatan**  
Seperti yang didefinisikan dalam skema tipe, `writeOnlyProperties` akan dihapus dari konfigurasi sebelum direkam oleh AWS Config. Ini berarti bahwa nilai-nilai ini tidak akan ada ketika konfigurasi diperoleh dari baca APIs. Untuk informasi selengkapnya`writeOnlyProperties`, lihat [Skema tipe sumber daya](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html).

# Baca Item Konfigurasi dengan AWS Config Sumber Daya Pihak Ketiga menggunakan AWS CLI
<a name="view-custom-resource-type-cli"></a>

Membaca item konfigurasi untuk sumber daya pihak ketiga atau jenis sumber daya khusus menggunakan prosedur berikut:

1. Buka jendela command prompt atau terminal.

1. Masukkan perintah berikut:

   ```
   aws configservice list-discovered-resources --resource-type MyCustomNamespace::Testing::WordPress
   ```

1. Tekan Enter.

   Anda akan melihat output yang serupa dengan yang berikut:

   ```
   {
       "resourceIdentifiers": [
           {
               "resourceType": "MyCustomNamespace::Testing::WordPress",
               "resourceId": "resource-001"
           }
       ]
   }
   ```

1. Masukkan perintah berikut:

   ```
   aws configservice batch-get-resource-config --resource-keys '[ { "resourceType": "MyCustomNamespace::Testing::WordPress", "resourceId": "resource-001" } ]'
   ```

1. Tekan Enter.

   Anda akan melihat output yang serupa dengan yang berikut:

   ```
   {
       "unprocessedResourceKeys": [],
       "baseConfigurationItems": [
           {
               "configurationItemCaptureTime": 1569605832.673,
               "resourceType": "MyCustomNamespace::Testing::WordPress",
               "resourceId": "resource-001",
               "configurationStateId": "1569605832673",
               "awsRegion": "us-west-2",
               "version": "1.3",
               "supplementaryConfiguration": {},
               "configuration": "{\"Id\":\"resource-001\",\"Name\":\"My example custom resource.\",\"PublicAccess\":false}",
               "configurationItemStatus": "ResourceDiscovered",
               "accountId": "AccountId"
           }
       ]
   }
   ```

# Hapus Sumber Daya Pihak Ketiga dari AWS Config menggunakan AWS CLI
<a name="delete-custom-resource-type"></a>

Masukkan perintah berikut untuk menghapus sumber daya pihak ketiga:

```
aws configservice delete-resource-config --resource-type MyCustomNamespace::Testing::WordPress --resource-id resource-002
```

Jika berhasil, perintah dijalankan tanpa output tambahan.