

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

# Provisionee
<a name="managedintegrations-sdk-device-provisionee"></a>

Provisionee adalah komponen integrasi terkelola yang memungkinkan penyediaan armada dengan klaim. Dengan provisionee, Anda menyediakan perangkat Anda dengan aman. SDK menciptakan sumber daya yang diperlukan untuk penyediaan perangkat, yang mencakup sertifikat perangkat dan kunci pribadi yang diperoleh dari cloud integrasi terkelola. Saat Anda ingin menyediakan perangkat Anda, atau jika ada perubahan yang mengharuskan Anda untuk menyediakan kembali perangkat Anda, Anda dapat menggunakan provisionee.

**Topics**
+ [Alur kerja penyediaan](#managedintegrations-sdk-device-provisionee-how)
+ [Tetapkan variabel lingkungan](#sdk-provisionee-envvars)
+ [Daftarkan titik akhir kustom](#sdk-provisionee-endpoint-create)
+ [Buat profil penyediaan](#sdk-provisionee-template-create)
+ [Buat hal yang dikelola](#sdk-provisionee-managed-thing-create)
+ [Penyediaan Wi-Fi pengguna SDK](#sdk-provisionee-endpoint-wifi)
+ [Penyediaan armada dengan klaim](#sdk-provisionee-endpoint-claim)
+ [Kemampuan Hal yang Dikelola](#sdk-provisionee-endpoint-update)

## Alur kerja penyediaan
<a name="managedintegrations-sdk-device-provisionee-how"></a>

Proses ini membutuhkan pengaturan di kedua sisi cloud dan perangkat. Pelanggan mengonfigurasi persyaratan cloud seperti titik akhir khusus, profil penyediaan, dan hal-hal terkelola. Pada perangkat pertama dihidupkan, penyediaannya:

1. Terhubung ke titik akhir integrasi terkelola menggunakan sertifikat klaim

1. Memvalidasi parameter perangkat melalui kait penyediaan armada

1. Memperoleh dan menyimpan sertifikat permanen dan kunci pribadi pada perangkat

1. Perangkat menggunakan sertifikat permanen untuk menyambung kembali

1. Menemukan dan mengunggah kemampuan perangkat ke integrasi terkelola

Setelah penyediaan berhasil, perangkat berkomunikasi langsung dengan integrasi terkelola. Provisionee mengaktifkan hanya untuk tugas penyediaan ulang.

## Tetapkan variabel lingkungan
<a name="sdk-provisionee-envvars"></a>

Tetapkan AWS kredensyal berikut di lingkungan cloud Anda:

```
$ export AWS_ACCESS_KEY_ID=YOUR-ACCOUNT-ACCESS-KEY-ID
$ export AWS_SECRET_ACCESS_KEY=YOUR-ACCOUNT-SECRET-ACCESS-KEY
$ export AWS_DEFAULT_REGION=YOUR-DEFAULT-REGION
```

## Daftarkan titik akhir kustom
<a name="sdk-provisionee-endpoint-create"></a>

Gunakan perintah [RegisterCustomEndpoint](https://docs.aws.amazon.com/iot-mi/latest/APIReference/API_RegisterCustomEndpoint.html)API di lingkungan cloud Anda untuk membuat titik akhir khusus untuk device-to-cloud komunikasi.

```
aws iot-managed-integrations register-custom-endpoint
```

**Contoh respon**

```
{ "EndpointAddress":"[ACCOUNT-PREFIX]-ats.iot.AWS-REGION.amazonaws.com" }
```

**catatan**  
 Simpan alamat titik akhir untuk mengonfigurasi parameter penyediaan. gunakan `GetCustomEndpoint` API, untuk mengembalikan informasi titik akhir. Untuk informasi selengkapnya, lihat [GetCustomEndpoint](https://docs.aws.amazon.com/iot-mi/latest/APIReference/API_GetCustomEndpoint.html)API, dan [RegisterCustomEndpoint](https://docs.aws.amazon.com/iot-mi/latest/APIReference/API_RegisterCustomEndpoint.html)API di *Panduan Referensi API integrasi Terkelola*. 

## Buat profil penyediaan
<a name="sdk-provisionee-template-create"></a>

Buat profil penyediaan yang menentukan metode penyediaan armada Anda. Jalankan [CreateProvisioningProfile](https://docs.aws.amazon.com/iot-mi/latest/APIReference/API_CreateProvisioningProfile.html)API di lingkungan cloud Anda untuk mengembalikan sertifikat klaim dan kunci pribadi untuk otentikasi perangkat:

```
aws iot-managed-integrations create-provisioning-profile \
--provisioning-type "FLEET_PROVISIONING" \
--name "PROVISIONING-PROFILE-NAME"
```

**Contoh respon**

```
{ "Arn":"arn:aws:iot-managed-integrations:AWS-REGION:YOUR-ACCOUNT-ID:provisioning-profile/PROFILE_NAME",
    "ClaimCertificate":"string",
    "ClaimCertificatePrivateKey":"string",
    "Name":"ProfileName",
    "ProvisioningType":"FLEET_PROVISIONING"}
```

Anda dapat mengimplementasikan pustaka abstraksi PKCS11 platform inti (PAL) untuk membuat PKCS11 pustaka inti berfungsi dengan perangkat Anda. Port PKCS11 PAL inti harus menyediakan lokasi untuk menyimpan sertifikat klaim dan kunci pribadi. Dengan menggunakan fitur ini, Anda dapat menyimpan kunci pribadi dan sertifikat perangkat dengan aman. Anda dapat menyimpan kunci pribadi dan sertifikat pada modul keamanan perangkat keras (HSM) atau modul platform tepercaya (TPM).

## Buat hal yang dikelola
<a name="sdk-provisionee-managed-thing-create"></a>

Daftarkan perangkat Anda dengan cloud integrasi terkelola menggunakan [CreateManagedThing](https://docs.aws.amazon.com/iot-mi/latest/APIReference/API_CreateManagedThing.html)API. Sertakan nomor seri (SN) dan kode produk universal (UPC) perangkat Anda:

```
aws iot-managed-integrations create-managed-thing —role DEVICE \
  --authentication-material-type WIFI_SETUP_QR_BAR_CODE \
  --authentication-material "SN:DEVICE-SN;UPC:DEVICE-UPC;"
```

Berikut ini menampilkan contoh respons API.

```
{
   "Arn":"arn:aws:iot-managed-integrations:AWS-REGION:ACCOUNT-ID:managed-thing/59d3c90c55c4491192d841879192d33f",
   "CreatedAt":1.730960226491E9,
   "Id":"59d3c90c55c4491192d841879192d33f"
}
```

API mengembalikan **ID Managed thing** yang dapat digunakan untuk validasi penyediaan. Anda harus memberikan nomor seri perangkat (SN) dan kode produk universal (UPC), yang dicocokkan dengan hal terkelola yang disetujui selama transaksi penyediaan. Transaksi mengembalikan hasil yang mirip dengan berikut ini:

```
/**
 * @brief Device info structure.
 */
typedef struct iotmiDev_DeviceInfo 
{
    char serialNumber[ IOTMI_DEVICE_MAX_SERIAL_NUMBER_LENGTH + 1U ];
    char universalProductCode[ IOTMI_DEVICE_MAX_UPC_LENGTH + 1U ];
    char internationalArticleNumber[ IOTMI_DEVICE_MAX_EAN_LENGTH + 1U ];
} iotmiDev_DeviceInfo_t;
```

## Penyediaan Wi-Fi pengguna SDK
<a name="sdk-provisionee-endpoint-wifi"></a>

Produsen perangkat dan penyedia solusi memiliki layanan penyediaan Wi-Fi milik mereka sendiri untuk menerima dan mengonfigurasi kredensyal Wi-Fi. Layanan penyediaan Wi-Fi melibatkan penggunaan aplikasi seluler khusus, koneksi Bluetooth Low Energy (BLE), dan protokol eksklusif lainnya untuk mentransfer kredensil Wi-Fi secara aman untuk proses penyiapan awal.

Konsumen SDK perangkat Akhir harus menerapkan layanan penyediaan Wi-Fi dan perangkat dapat terhubung ke jaringan Wi-Fi.

## Penyediaan armada dengan klaim
<a name="sdk-provisionee-endpoint-claim"></a>

Menggunakan provisionee, pengguna akhir dapat memberikan sertifikat unik dan mendaftarkannya dengan integrasi terkelola menggunakan penyediaan dengan klaim.

ID klien dapat diperoleh baik dari respons templat penyediaan atau sertifikat perangkat `<common name>“_”<serial number>`

## Kemampuan Hal yang Dikelola
<a name="sdk-provisionee-endpoint-update"></a>

Penyedia menemukan kemampuan hal yang dikelola, kemudian mengunggah kemampuan ke integrasi terkelola. Itu membuat kemampuan tersedia untuk aplikasi dan layanan lain untuk diakses. Perangkat, klien web lainnya, dan layanan dapat memperbarui kemampuan dengan menggunakan MQTT dan topik MQTT yang dicadangkan, atau HTTP menggunakan REST API.