CertificateEncryption - スコープ指定
CertificateEncryption API は、スコープ対象のアプリケーションで証明書を暗号化するためのメソッドを提供します。
これらのメソッドを使用して、証明書のハッシュを生成し、秘密鍵を使用してデータに署名し、メッセージ認証コードを生成します。
CertificateEncryption - CertificateEncryption()
スコープ対象のアプリケーションで CertificateEncryption オブジェクトをインスタンス化します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
CertificateEncryption - generateMac(文字列 key, 文字列 algorithm, 文字列 data)
メッセージの認証に使用されるメッセージ認証コード (MAC) を生成します。
| 名前 | タイプ | 説明 |
|---|---|---|
| key | 文字列 | メッセージへの署名に使用するキーです。Base64 でエンコードする必要があります。 |
| アルゴリズム | 文字列 | MAC の生成に使用するアルゴリズムです (HmacSHA256、HmacSHA1、HmacMD5)。 |
| データ | 文字列 | 処理するデータです。 |
| タイプ | 説明 |
|---|---|
| 文字列 | base64 形式の MAC |
この例は、data として sample_key を使用し、algorithm として HmacSHA256 を使用する方法を示しています。
var mac = new CertificateEncryption;
var key = "sample_key";
key = gs.base64Encode(key);
mac.generateMac(key, "HmacSHA256", "sample_data");
CertificateEncryption - getThumbPrint(文字列 certificateID, 文字列 algorithm)
信頼できるストア証明書からの証明書のハッシュ (SHA-1、SHA-256 など) を生成します。
| 名前 | タイプ | 説明 |
|---|---|---|
| certificateID | 文字列 | X.509 証明書 [sys_certificate] テーブルの証明書レコードの sys_id です。 |
| アルゴリズム | 文字列 | ハッシュの作成に使用するアルゴリズムです (SHA-1、SHA-256 など)。 |
| タイプ | 説明 |
|---|---|
| 文字列 | base64 形式のサムプリント |
この例は、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);
}
出力:
V1X+aguDBTZVVbWMGTXxdzJLmaY=
CertificateEncryption - getThumbPrintFromKeyStore(文字列 certificateID, 文字列 alias, 文字列 algorithm)
キーストア エントリから証明書のハッシュ (SHA-1、SHA-256など) を生成します。
| 名前 | タイプ | 説明 |
|---|---|---|
| certificateID | 文字列 | X.509 証明書 [sys_certificate] テーブルの証明書レコードの sys_id です。 |
| エイリアス | 文字列 | 証明書のエイリアス名 |
| アルゴリズム | 文字列 | ハッシュの作成に使用するアルゴリズムです (SHA-1、SHA-256 など)。 |
| タイプ | 説明 |
|---|---|
| 文字列 | base64 形式のサムプリント |
CertificateEncryption - sign(文字列 certificateID, 文字列 alias, 文字列 aliaspassword, 文字列 algorithm, 文字列 datatosign)
秘密鍵と指定されたアルゴリズムを使用してデータに署名します。
| 名前 | タイプ | 説明 |
|---|---|---|
| certificateID | 文字列 | X.509 証明書 [sys_certificate] テーブルの証明書レコードの sys_id |
| エイリアス | 文字列 | 秘密キー名 |
| aliaspassword | 文字列 | 秘密キーのパスワード |
| アルゴリズム | 文字列 | 使用するアルゴリズムです。次のいずれかの値を使用する必要があります。
|
| datatosign | 文字列 | 署名するデータ |
| タイプ | 説明 |
|---|---|
| 文字列 | base64 形式で署名されたデータ |
var ce = new CertificateEncryption;
ce.sign("recordID", "alias", "password", "SHA1withRSA", "sign this data");