Chiffrement du certificat : délimité
L’API CertificateEncryption fournit des méthodes de chiffrement des certificats dans les applications incluses dans le périmètre.
Utilisez ces méthodes pour générer un hachage pour le certificat, signer des données à l’aide d’une clé privée et générer un code d’authentification de message.
CertificateEncryption : CertificateEncryption()
Instancie un objet CertificateEncryption dans une application incluse dans le périmètre.
| Nom | Type | Description |
|---|---|---|
| Néant |
CertificateEncryption : generateMac (clé de chaîne, algorithme de chaîne, données de chaîne)
Génère le code d’authentification de message (MAC), qui est utilisé pour authentifier un message.
| Nom | Type | Description |
|---|---|---|
| key | Chaîne | Clé à utiliser pour signer le message. Doit être codé Base64. |
| algorithme | Chaîne | Algorithme à utiliser pour générer le MAC : HmacSHA256, HmacSHA1, HmacMD5, etc. |
| données | Chaîne | Données à traiter. |
| Type | Description |
|---|---|
| Chaîne | MAC au format base64. |
Cet exemple montre comment utiliser un MAC en utilisant sample_key comme données et HmacSHA256 comme algorithme.
var mac = new CertificateEncryption;
var key = "sample_key";
key = gs.base64Encode(key);
mac.generateMac(key, "HmacSHA256", "sample_data");
Chiffrement du certificat : getThumbPrint(String certificateID, String algorithm)
Génère un hachage (SHA-1, SHA-256, et ainsi de suite) pour le certificat à partir du certificat de magasin de confiance.
| Nom | Type | Description |
|---|---|---|
| ID certificat | Chaîne | Sys_id de l’enregistrement de certificat dans la table Certificat X.509 [sys_certificate]. |
| algorithme | Chaîne | Algorithme à utiliser pour créer le hachage, tel que SHA-1, SHA-256, etc. |
| Type | Description |
|---|---|
| Chaîne | Empreinte digitale au format base64. |
Cet exemple montre comment générer l’empreinte (hachage) du certificat AzureAAD.
//Create a GlideRecord to the certificate table
var x509GR = new GlideRecord('sys_certificate');
//If there is a certificate of a name of AzureAAD, get the certificate thumbprint
if(x509GR.get('name', 'AzureAAD')){
//Use the sys_id and algorithm we want to create a thumbprint
var thumbPrint = CertificateEncryption.getThumbPrint(x509GR.getUniqueValue(), "SHA-1");
//Print the created thumbprint
gs.print("Thumbprint for " + x509GR.getDisplayValue() + " is " + thumbPrint);
}
Sortie :
V1X+aguDBTZVVbWMGTXxdzJLmaY=
Chiffrement du certificat : getThumbPrintFromKeyStore(ID de certificat de chaîne, alias de chaîne, algorithme de chaîne)
Génère un hachage (SHA-1, SHA-256, etc.) pour le certificat à partir de l’entrée du magasin de clés.
| Nom | Type | Description |
|---|---|---|
| ID certificat | Chaîne | Sys_id de l’enregistrement de certificat dans la table Certificat X.509 [sys_certificate]. |
| alias | Chaîne | Nom d’alias du certificat. |
| algorithme | Chaîne | Algorithme à utiliser pour créer le hachage, tel que SHA-1, SHA-256, etc. |
| Type | Description |
|---|---|
| Chaîne | Empreinte digitale au format base64. |
CertificateEncryption : sign(Chaîne certificateID, String alias, String aliaspassword, String algorithm, String datatosign)
Signe les données à l’aide de la clé privée et de l’algorithme spécifié.
| Nom | Type | Description |
|---|---|---|
| ID certificat | Chaîne | sys_id de l’enregistrement de certificat dans la table Certificat X.509 [sys_certificate]. |
| alias | Chaîne | Nom de clé privée. |
| aliasmot de passe | Chaîne | Mot de passe de la clé privée. |
| algorithme | Chaîne | Algorithme à utiliser. Doit être l’une des valeurs suivantes :
|
| DataToSign | Chaîne | Données à signer. |
| Type | Description |
|---|---|
| Chaîne | Données signées au format base64. |
var ce = new CertificateEncryption;
ce.sign("recordID", "alias", "password", "SHA1withRSA", "sign this data");