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 khusus memungkinkan Anda menentukan cara mengautentikasi dan mengotorisasi klien dengan menggunakan sumber daya otorisasi.  Setiap authorizer berisi referensi ke fungsi Lambda yang dikelola pelanggan, kunci publik opsional untuk memvalidasi kredensi 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 kredensyal baik di bidang header permintaan atau parameter kueri (untuk HTTP Publish atau MQTT melalui WebSockets protokol), atau di bidang nama pengguna dan kata sandi pesan MQTT CONNECT (untuk MQTT dan MQTT melalui protokol). WebSockets

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

    • Permintaan yang masuk menentukan otorisasi.

    • Titik akhir AWS IoT Core data yang menerima permintaan memiliki otorisasi default yang dikonfigurasi untuknya.

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

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

  4. Fungsi Lambda menerima kredensyal 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 kredensyal dalam permintaan dengan menjalankan fungsi Lambda.

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

  7. Setelah koneksi dibuat dan Lambda otorisasi kustom 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 penyegaran di Lambda otorisasi khusus 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 refreshAfterInSeconds dan disconnectAfterInSeconds parameter dalam respons fungsi Lambda Anda. Untuk informasi selengkapnya tentang isi respons fungsi Lambda Anda, lihat. Mendefinisikan fungsi Lambda Anda

catatan

Jika Anda membiarkan penandatanganan diaktifkan, Anda dapat mencegah pemicu Lambda yang berlebihan oleh klien yang tidak dikenal. Pertimbangkan ini sebelum Anda menonaktifkan penandatanganan di otorisasi Anda.

catatan

Batas waktu tunggu fungsi Lambda untuk otorisasi khusus adalah 5 detik.