View a markdown version of this page

Memahami alur kerja otentikasi kustom - AWS IoT Core

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

Memahami alur kerja otentikasi kustom

Otentikasi kustom memungkinkan Anda menentukan cara mengotentikasi dan mengotorisasi klien dengan menggunakan sumber daya otorizer.   Setiap otorizer berisi referensi ke fungsi Lambda yang dikelola pelanggan, kunci publik opsional untuk memvalidasi kredentif perangkat, dan informasi konfigurasi tambahan. Diagram berikut menggambarkan alur kerja otorisasi untuk otentikasi kustom di AWS IoT Core.

Alur kerja otorisasi khusus untuk otentikasi khusus di AWS IoT Core.

AWS IoT Core otentikasi kustom dan alur kerja otorisasi

Daftar berikut menjelaskan setiap langkah dalam alur kerja otentikasi dan otorisasi kustom.

  1. Perangkat terhubung ke titik akhir AWS IoT Core data pelanggan dengan menggunakan salah satu yang didukungProtokol komunikasi perangkat. Perangkat meneruskan kredenSIAL baik di bidang header permintaan atau parameter kueri (untuk WebSockets protokol HTTP Publish atau MQTT over), atau di bidang nama pengguna dan kata sandi pesan MQTT CONNECT (untuk protokol MQTT dan MQTT over). WebSockets

  2. AWS IoT Core memeriksa salah satu dari dua kondisi:

    • Permintaan masuk menentukan otorizer.

    • T AWS IoT Core itik akhir data yang menerima permintaan memiliki otorizer default yang dikonfigurasi untuk itu.

    Jika AWS IoT Core menemukan otorizer dengan salah satu cara ini, AWS IoT Core memicu fungsi Lambda yang terkait dengan otorizer.

  3. (Opsional) Jika Anda telah mengaktifkan penandatanganan token, AWS IoT Core memvalidasi tanda tangan permintaan dengan menggunakan kunci publik yang disimpan di otorizer sebelum memicu fungsi Lambda. Jika validasi gagal, AWS IoT Core hentikan permintaan tanpa memanggil fungsi Lambda. 

  4. Fungsi Lambda menerima kredenSIAL dan metadata koneksi dalam permintaan dan membuat keputusan otentikasi.

  5. Fungsi Lambda mengembalikan hasil keputusan otentikasi dan dokumen AWS IoT Core kebijakan yang menentukan tindakan apa yang diizinkan dalam koneksi. Fungsi Lambda juga mengembalikan informasi yang menentukan seberapa sering AWS IoT Core memvalidasi ulang kredenSIAL dalam permintaan dengan memanggil fungsi Lambda.

  6. AWS IoT Core mengevaluasi aktivitas pada koneksi terhadap kebijakan yang telah diterimanya dari fungsi Lambda.

  7. Setelah koneksi dibuat dan otorisasi kustom Lambda Anda awalnya dipanggil, pemanggilan berikutnya dapat ditunda hingga 5 menit pada koneksi idle tanpa operasi MQTT apa pun. Setelah itu, pemanggilan berikutnya akan mengikuti interval refresh di Lambda otorizer kustom Anda. Pendekatan ini dapat mencegah pemanggilan berlebihan yang dapat melebihi batas konkurensi Lambda Anda. Akun AWS

Pertimbangan penskalaan

Karena fungsi Lambda menangani otentikasi dan otorisasi untuk otorisasi Anda, fungsi tersebut tunduk pada harga Lambda dan batas layanan, seperti tingkat eksekusi bersamaan. Untuk informasi selengkapnya tentang harga Lambda, lihat Harga Lambda. Anda dapat mengelola beban pada fungsi Lambda Anda dengan menyesuaikan disconnectAfterInSeconds parameter refreshAfterInSeconds dan dalam respons fungsi Lambda Anda. Untuk informasi selengkapnya tentang isi respons fungsi Lambda Anda, lihatMendefinisikan fungsi Lambda Anda.

catatan

Jika Anda membiarkan penandatanganan diaktifkan, Anda dapat mencegah pemicu Lambda yang berlebihan oleh klien yang tidak dikenal. Pertimbangkan hal ini sebelum Anda menonaktifkan masuk ke otorizer Anda.

catatan

Batas batas waktu fungsi Lambda untuk otorizer kustom adalah 5 detik.