PKCS#11 penyedia - AWS IoT Greengrass

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

PKCS#11 penyedia

Komponen penyedia PKCS #11 (aws.greengrass.crypto.Pkcs11Provider) memungkinkan Anda mengonfigurasi perangkat lunak AWS IoT Greengrass Core untuk menggunakan modul keamanan perangkat keras (HSM) melalui antarmuka PKCS #11. Komponen ini memungkinkan Anda menyimpan file sertifikat dan kunci pribadi dengan aman sehingga tidak terekspos atau digandakan dalam perangkat lunak. Untuk informasi selengkapnya, lihat Integrasi keamanan perangkat keras.

Untuk menyediakan perangkat inti Greengrass yang menyimpan sertifikat dan kunci privatnya diHSM, Anda harus menentukan komponen ini sebagai plugin penyediaan saat Anda menginstal perangkat lunak Core. AWS IoT Greengrass Untuk informasi selengkapnya, lihat Instal perangkat lunak AWS IoT Greengrass Core dengan penyediaan sumber daya manual.

AWS IoT Greengrass menyediakan komponen ini sebagai JAR file yang dapat Anda unduh untuk ditentukan sebagai plugin penyediaan selama instalasi. Anda dapat mengunduh versi terbaru dari JAR file komponen sebagai berikutURL: https://d2s8p88vqu9w66.cloudfront.net/releases/Pkcs11Provider/aws.greengrass.crypto.Pkcs11Provider-latest.jar.

Versi

Komponen ini memiliki versi berikut:

  • 2.0.x

Tipe

Komponen ini adalah komponen plugin (aws.greengrass.plugin). Inti Greengrass menjalankan komponen ini di Java Virtual Machine JVM () yang sama dengan nukleus. Nukleus dimulai ulang saat Anda mengubah versi komponen ini di perangkat inti.

Komponen plugin menggunakan file log yang sama seperti inti Greengrass. Untuk informasi selengkapnya, lihat Memantau AWS IoT Greengrass log.

Untuk informasi selengkapnya, lihat Jenis komponen.

Sistem operasi

Komponen ini hanya dapat diinstal pada perangkat inti Linux.

Persyaratan

Komponen ini memiliki persyaratan sebagai berikut:

  • Modul keamanan perangkat keras yang mendukung skema tanda tangan PKCS#1 v1.5 dan RSA kunci dengan ukuran kunci RSA -2048 (atau lebih besar) atau kunci. ECC

    catatan

    Untuk menggunakan modul keamanan perangkat keras dengan ECC kunci, Anda harus menggunakan Greengrass nucleus v2.5.6 atau yang lebih baru.

    Untuk menggunakan modul keamanan perangkat keras dan manajer rahasia, Anda harus menggunakan modul keamanan perangkat keras dengan RSA kunci.

  • Pustaka penyedia PKCS #11 yang dapat dimuat oleh perangkat lunak AWS IoT Greengrass Core saat runtime (menggunakan libdl) untuk memanggil PKCS fungsi #11. Pustaka penyedia PKCS #11 harus mengimplementasikan API operasi PKCS #11 berikut:

    • C_Initialize

    • C_Finalize

    • C_GetSlotList

    • C_GetSlotInfo

    • C_GetTokenInfo

    • C_OpenSession

    • C_GetSessionInfo

    • C_CloseSession

    • C_Login

    • C_Logout

    • C_GetAttributeValue

    • C_FindObjectsInit

    • C_FindObjects

    • C_FindObjectsFinal

    • C_DecryptInit

    • C_Decrypt

    • C_DecryptUpdate

    • C_DecryptFinal

    • C_SignInit

    • C_Sign

    • C_SignUpdate

    • C_SignFinal

    • C_GetMechanismList

    • C_GetMechanismInfo

    • C_GetInfo

    • C_GetFunctionList

  • Modul perangkat keras harus dapat diselesaikan dengan label slot, seperti yang didefinisikan dalam spesifikasi PKCS #11.

  • Anda harus menyimpan kunci pribadi dan sertifikat HSM di slot yang sama, dan mereka harus menggunakan label objek dan ID objek yang sama, jika objek HSM mendukungIDs.

  • Sertifikat dan kunci pribadi harus dapat diselesaikan dengan label objek.

  • Kunci pribadi harus memiliki izin berikut:

    • sign

    • decrypt

  • (Opsional) Untuk menggunakan komponen manajer rahasia, Anda harus menggunakan versi 2.1.0 atau yang lebih baru, dan kunci pribadi harus memiliki izin berikut:

    • unwrap

    • wrap

  • (Opsional) Jika Anda menggunakan TPM2 perpustakaan dan menjalankan inti Greengrass sebagai layanan, Anda harus menyediakan variabel lingkungan dengan lokasi penyimpanan #11. PKCS Contoh berikut adalah file layanan systemd dengan variabel lingkungan yang diperlukan:

    [Unit] Description=Greengrass Core After=network.target [Service] Type=simple PIDFile=/var/run/greengrass.pid Environment=TPM2_PKCS11_STORE=/path/to/store/directory RemainAfterExit=no Restart=on-failure RestartSec=10 ExecStart=/bin/sh /greengrass/v2/alts/current/distro/bin/loader [Install] WantedBy=multi-user.target

Dependensi

Saat Anda menerapkan komponen, gunakan AWS IoT Greengrass juga versi dependensinya yang kompatibel. Ini berarti bahwa Anda harus memenuhi persyaratan untuk komponen dan semua dependensinya untuk berhasil men-deploy komponen. Bagian ini berisi daftar dependensi untuk versi yang dirilis dari komponen ini dan kendala versi semantik yang menentukan versi komponen untuk setiap dependensi. Anda juga dapat melihat dependensi untuk setiap versi komponen di konsol AWS IoT Greengrass tersebut. Pada halaman detail komponen, cari daftar Dependensi.

2.0.8

Tabel berikut mencantumkan dependensi untuk versi 2.0.8 komponen ini.

Dependensi Versi yang kompatibel Jenis dependensi
Inti Greengrass >=2.5.3 <2.14.0 Lunak
2.0.7

Tabel berikut mencantumkan dependensi untuk versi 2.0.7 komponen ini.

Dependensi Versi yang kompatibel Jenis dependensi
Inti Greengrass >=2.5.3 <2.13.0 Lunak
2.0.6

Tabel berikut mencantumkan dependensi untuk versi 2.0.6 komponen ini.

Dependensi Versi yang kompatibel Jenis dependensi
Inti Greengrass >=2.5.3 <2.12.0 Lunak
2.0.5

Tabel berikut mencantumkan dependensi untuk versi 2.0.5 komponen ini.

Dependensi Versi yang kompatibel Jenis dependensi
Inti Greengrass >=2.5.3 <2.11.0 Lunak
2.0.4

Tabel berikut mencantumkan dependensi untuk versi 2.0.4 komponen ini.

Dependensi Versi yang kompatibel Jenis dependensi
Inti Greengrass >=2.5.3 <2.10.0 Lunak
2.0.3

Tabel berikut mencantumkan dependensi untuk versi 2.0.3 komponen ini.

Dependensi Versi yang kompatibel Jenis dependensi
Inti Greengrass >=2.5.3 <2.9.0 Lunak
2.0.2

Tabel berikut mencantumkan dependensi untuk versi 2.0.2 komponen ini.

Dependensi Versi yang kompatibel Jenis dependensi
Inti Greengrass >=2.5.3 <2.8.0 Lunak
2.0.1

Tabel berikut mencantumkan dependensi untuk versi 2.0.1 komponen ini.

Dependensi Versi yang kompatibel Jenis dependensi
Inti Greengrass >=2.5.3 <2.7.0 Lunak
2.0.0

Tabel berikut mencantumkan dependensi untuk versi 2.0.0 komponen ini.

Dependensi Versi yang kompatibel Jenis dependensi
Inti Greengrass >=2.5.3 <2.6.0 Lunak

Untuk informasi selengkapnya tentang dependensi komponen, lihat referensi resep komponen.

Konfigurasi

Komponen ini menyediakan parameter konfigurasi berikut yang dapat Anda sesuaikan ketika Anda men-deploy komponen.

name

Sebuah nama untuk konfigurasi PKCS #11.

library

Jalur file absolut ke pustaka implementasi PKCS #11 yang dapat dimuat oleh perangkat lunak AWS IoT Greengrass Core dengan libdl.

slot

ID slot yang berisi kunci pribadi dan sertifikat perangkat. Nilai ini berbeda dari indeks slot atau label slot.

userPin

Pengguna PIN yang digunakan untuk mengakses slot.

contoh Contoh: Pembaruan gabungan konfigurasi
{ "name": "softhsm_pkcs11", "library": "/usr/lib/softhsm/libsofthsm2.so", "slot": 1, "userPin": "1234" }

Berkas log lokal

Komponen ini menggunakan file log yang sama dengan komponen inti Greengrass.

Linux
/greengrass/v2/logs/greengrass.log
Windows
C:\greengrass\v2\logs\greengrass.log
Untuk melihat log komponen ini
  • Jalankan perintah berikut pada perangkat inti untuk melihat file log komponen ini secara real time. Ganti /greengrass/v2 atau C:\greengrass\v2 dengan jalur ke folder AWS IoT Greengrass root.

    Linux
    sudo tail -f /greengrass/v2/logs/greengrass.log
    Windows (PowerShell)
    Get-Content C:\greengrass\v2\logs\greengrass.log -Tail 10 -Wait

Changelog

Tabel berikut menjelaskan perubahan dalam setiap versi komponen.

Versi

Perubahan

2.0.8

Versi diperbarui untuk Greengrass nucleus versi 2.13.0 rilis.

2.0.7

Versi diperbarui untuk Greengrass nucleus versi 2.12.0 rilis.

2.0.6

Versi diperbarui untuk Greengrass nucleus versi 2.11.0 rilis.

2.0.5

Versi diperbarui untuk Greengrass nucleus versi 2.10.0 rilis.

2.0.4

Versi diperbarui untuk Greengrass nucleus versi 2.9.0 rilis.

2.0.3

Versi diperbarui untuk Greengrass nucleus versi 2.8.0 rilis.

2.0.2

Versi diperbarui untuk Greengrass nucleus versi 2.7.0 rilis.

2.0.1

Versi diperbarui untuk Greengrass nucleus versi 2.6.0 rilis.

2.0.0

Versi awal.