Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Le composant fournisseur PKCS #11 (aws.greengrass.crypto.Pkcs11Provider
) vous permet de configurer le logiciel AWS IoT Greengrass principal pour utiliser un module de sécurité matériel (HSM) via l'interface PKCS #11
Pour approvisionner un appareil principal Greengrass qui stocke son certificat et sa clé privée dans un HSM, vous devez spécifier ce composant en tant que plug-in de provisionnement lorsque vous installez le logiciel Core. AWS IoT Greengrass Pour de plus amples informations, veuillez consulter Installation AWS IoT Greengrass du logiciel Core avec provisionnement manuel des ressources.
AWS IoT Greengrass fournit ce composant sous forme de fichier JAR que vous pouvez télécharger pour le spécifier en tant que plugin de provisionnement lors de l'installation. Vous pouvez télécharger la dernière version du fichier JAR du composant à l'adresse suivante : https://d2s8p88vqu9w66.cloudfront. net/releases/Pkcs11Provider/aws.greengrass.crypto.pkcs11Provider-Latest.jar
Rubriques
Versions
Les versions de ce composant sont les suivantes :
-
2,0.x
Type
Ce composant est un composant de plugin (aws.greengrass.plugin
). Le noyau Greengrass exécute ce composant dans la même machine virtuelle Java (JVM) que le noyau. Le noyau redémarre lorsque vous modifiez la version de ce composant sur le périphérique principal.
Ce composant utilise le même fichier journal que le noyau Greengrass. Pour de plus amples informations, veuillez consulter AWS IoT Greengrass Journaux de surveillance.
Pour de plus amples informations, veuillez consulter Types de composants.
Système d’exploitation
Ce composant ne peut être installé que sur les appareils principaux de Linux.
Prérequis
Ce composant répond aux exigences suivantes :
-
Module de sécurité matérielle qui prend en charge le schéma de signature PKCS #1 v1.5
et les clés RSA d'une taille de clé RSA-2048 (ou supérieure) ou les clés ECC. Note
Pour utiliser un module de sécurité matériel avec des clés ECC, vous devez utiliser Greengrass nucleus v2.5.6 ou version ultérieure.
Pour utiliser un module de sécurité matériel et un gestionnaire de secrets, vous devez utiliser un module de sécurité matériel doté de clés RSA.
-
Une bibliothèque de fournisseur PKCS #11 que le logiciel AWS IoT Greengrass Core peut charger au moment de l'exécution (à l'aide de libdl) pour appeler les fonctions PKCS #11. La bibliothèque du fournisseur PKCS #11 doit implémenter les opérations d'API PKCS #11 suivantes :
-
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
-
-
Le module matériel doit être résolu par étiquette d'emplacement, tel que défini dans la spécification PKCS#11.
-
Vous devez stocker la clé privée et le certificat dans le HSM dans le même emplacement, et ils doivent utiliser la même étiquette d'objet et le même ID d'objet, si le HSM prend en charge l'objet. IDs
-
Le certificat et la clé privée doivent pouvoir être résolus par des libellés d'objets.
-
La clé privée doit disposer des autorisations suivantes :
-
sign
-
decrypt
-
-
(Facultatif) Pour utiliser le composant secret manager, vous devez utiliser la version 2.1.0 ou ultérieure, et la clé privée doit disposer des autorisations suivantes :
-
unwrap
-
wrap
-
-
(Facultatif) Si vous utilisez la TPM2 bibliothèque et exécutez le noyau de Greengrass en tant que service, vous devez fournir une variable d'environnement indiquant l'emplacement du magasin PKCS #11. L'exemple suivant est un fichier de service systemd contenant la variable d'environnement requise :
[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
Dépendances
Lorsque vous déployez un composant, il déploie AWS IoT Greengrass également des versions compatibles de ses dépendances. Cela signifie que vous devez satisfaire aux exigences relatives au composant et à toutes ses dépendances pour réussir le déploiement du composant. Cette section répertorie les dépendances des versions publiées de ce composant et les contraintes de version sémantiques qui définissent les versions des composants pour chaque dépendance. Vous pouvez également consulter les dépendances de chaque version du composant dans la AWS IoT Greengrass console
Le tableau suivant répertorie les dépendances pour la version 2.0.9 de ce composant.
Dépendance | Versions compatibles | Type de dépendance |
---|---|---|
Noyau de Greengrass | >=2,5,3 <2,15,0 | Flexible |
Pour plus d'informations sur les dépendances des composants, consultez la référence de la recette des composants.
Configuration
Ce composant fournit les paramètres de configuration suivants que vous pouvez personnaliser lorsque vous déployez le composant.
name
-
Nom de la configuration PKCS #11.
library
-
Le chemin de fichier absolu vers la bibliothèque de l'implémentation PKCS #11 que le logiciel AWS IoT Greengrass Core peut charger avec libdl.
slot
-
L'ID du slot qui contient la clé privée et le certificat de l'appareil. Cette valeur est différente de l'index ou de l'étiquette du slot.
userPin
-
Le code PIN de l'utilisateur à utiliser pour accéder au slot.
Exemple : mise à jour de la fusion de configurations
{
"name": "softhsm_pkcs11",
"library": "/usr/lib/softhsm/libsofthsm2.so",
"slot": 1,
"userPin": "1234"
}
Fichier journal local
Ce composant utilise le même fichier journal que le composant Greengrass nucleus.
/logs/greengrass.log
/greengrass/v2
Pour consulter les journaux de ce composant
-
Exécutez la commande suivante sur le périphérique principal pour afficher le fichier journal de ce composant en temps réel. Remplacez
ou/greengrass/v2
C:\greengrass\v2
par le chemin d'accès au dossier AWS IoT Greengrass racine.sudo tail -f
/logs/greengrass.log/greengrass/v2
Journal des modifications
Le tableau suivant décrit les modifications apportées à chaque version du composant.
Version |
Modifications |
---|---|
2.0.9 |
Version mise à jour pour la version 2.14.0 de Greengrass Nucleus. |
2.0.8 |
Version mise à jour pour la version 2.13.0 de Greengrass Nucleus. |
2.0.7 |
Version mise à jour pour la version 2.12.0 de Greengrass Nucleus. |
2.0.6 |
Version mise à jour pour la version 2.11.0 de Greengrass Nucleus. |
2.0.5 |
Version mise à jour pour la version 2.10.0 de Greengrass Nucleus. |
2.0.4 |
Version mise à jour pour la version 2.9.0 de Greengrass Nucleus. |
2.0.3 |
Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. |
2.0.2 |
Version mise à jour pour la version 2.7.0 de Greengrass Nucleus. |
2.0.1 |
Version mise à jour pour la version 2.6.0 de Greengrass Nucleus. |
2.0.0 |
Première version. |