CertificateEncryption – Scoped
APIs zum Verschlüsseln von Zertifikaten in bereichsbezogenen Anwendungen verfügbar.
Verwenden Sie diese Methoden, um einen Hash für das Zertifikat zu generieren, Daten mit einem privaten Schlüssel zu signieren und einen Nachrichtenauthentifizierungscode zu generieren.
CertificateEncryption – CertificateEncryption()
Instantiiert ein CertificateEncryption-Objekt in einer bereichsbezogenen Anwendung.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
CertificateEncryption – generateMac(String key, String algorithm, String data)
Erzeugt den Message Authentication Code (MAC), mit dem eine Nachricht authentifiziert wird.
| Name | Typ | Beschreibung |
|---|---|---|
| key | Zeichenfolge | Schlüssel zum Signieren der Nachricht. Muss Base64-codiert sein. |
| Algorithmus | Zeichenfolge | Zum Generieren des MAC zu verwendender Algorithmus: HmacSHA256, HmacSHA1, HmacMD5 usw. |
| Daten | Zeichenfolge | Zu verarbeitende Daten. |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | MAC im base64-Format. |
Dieses Beispiel zeigt, wie ein MAC mit sample_key als Daten und HmacSHA256 als Algorithmus erstellt wird.
var mac = new CertificateEncryption;
var key = "sample_key";
key = gs.base64Encode(key);
mac.generateMac(key, "HmacSHA256", "sample_data");
CertificateEncryption – getThumbPrint(String certificateID, String algorithm)
Erzeugt einen Hash (SHA-1, SHA-256 usw.) für das Zertifikat von Trust Store Cert.
| Name | Typ | Beschreibung |
|---|---|---|
| certificateID | Zeichenfolge | Sys_id des Zertifikatdatensatzes in der X.509-Zertifikattabelle [sys_certificate]. |
| Algorithmus | Zeichenfolge | Algorithmus, der zum Erstellen des Hash verwendet wird, z. B. SHA-1, SHA-256 usw. |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Fingerabdruck im base64-Format. |
Dieses Beispiel zeigt, wie der Fingerabdruck (Hash) für das AzureAAD-Zertifikat generiert wird.
//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);
}
Ausgabe:
V1X+aguDBTZVVbWMGTXxdzJLmaY=
CertificateEncryption – getThumbPrintFromKeyStore(String certificateID, String alias, String algorithm)
Erzeugt einen Hash (SHA-1, SHA-256 usw.) für das Zertifikat aus dem Keystore-Eintrag.
| Name | Typ | Beschreibung |
|---|---|---|
| certificateID | Zeichenfolge | Sys_id des Zertifikatdatensatzes in der X.509-Zertifikattabelle [sys_certificate]. |
| alias | Zeichenfolge | Aliasname für das Zertifikat. |
| algorithm | Zeichenfolge | Algorithmus, der zum Erstellen des Hash verwendet wird, z. B. SHA-1, SHA-256 usw. |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Fingerabdruck im base64-Format. |
CertificateEncryption – sign(String certificateID, String alias, String aliaspassword, String algorithm, String datatosign)
Signiert die Daten mit dem privaten Schlüssel und dem angegebenen Algorithmus.
| Name | Typ | Beschreibung |
|---|---|---|
| certificateID | Zeichenfolge | sys_id des Zertifikatdatensatzes in der Tabelle „X.509-Zertifikat“ [sys_certificate]. |
| alias | Zeichenfolge | Privater Schlüsselname. |
| aliaspassword | Zeichenfolge | Passwort für den privaten Schlüssel. |
| Algorithmus | Zeichenfolge | Zu verwendender Algorithmus. Muss einer der folgenden Werte sein:
|
| datatosign | Zeichenfolge | Daten, die signiert werden sollen. |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Signierte Daten im base64-Format. |
var ce = new CertificateEncryption;
ce.sign("recordID", "alias", "password", "SHA1withRSA", "sign this data");