CertificateEncryption: スコープ指定

  • リリースバージョン: Australia
  • 更新日 2026年03月12日
  • 所要時間:4分
  • CertificateEncryption API は、スコープ対象のアプリケーションの証明書を暗号化するためのメソッドを提供します。

    これらのメソッドを使用して、証明書のハッシュを生成し、秘密鍵を使用してデータに署名し、メッセージ認証コードを生成します。

    CertificateEncryption:CertificateEncryption()

    スコープ対象のアプリケーションで CertificateEncryption オブジェクトをインスタンス化します。

    表 : 1. パラメーター
    名前 タイプ 説明
    なし

    CertificateEncryption - generateMac(文字列キー、文字列アルゴリズム、文字列データ)

    メッセージの認証に使用されるメッセージ認証コード (MAC) を生成します。

    表 : 2. パラメーター
    名前 タイプ 説明
    key 文字列 メッセージの署名に使用するキー。Base64 エンコードする必要があります。
    アルゴリズム 文字列 MAC の生成に使用するアルゴリズム:HmacSHA256、HmacSHA1、HmacMD5 など。
    データ 文字列 処理するデータ。
    表 : 3. 返される内容
    タイプ 説明
    文字列 base64 形式の MAC。

    この例では、データとして sample_key を使用し、アルゴリズムとして HmacSHA256 を使用して MAC を作成する方法を示します。

    var mac = new CertificateEncryption;
    var key = "sample_key"; 
    key = gs.base64Encode(key);
    mac.generateMac(key, "HmacSHA256", "sample_data");

    CertificateEncryption - getThumbPrint(文字列 certificateID, 文字列アルゴリズム)

    トラストストア証明書からの証明書のハッシュ (SHA-1、SHA-256 など) を生成します。

    表 : 4. パラメーター
    名前 タイプ 説明
    証明書 ID 文字列 X.509 証明書 [sys_certificate] テーブルの証明書レコードのSys_id。
    アルゴリズム 文字列 SHA-1、SHA-256 など、ハッシュの作成に使用するアルゴリズム。
    表 : 5. 返される内容
    タイプ 説明
    文字列 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, 文字列エイリアス, 文字列アルゴリズム)

    キーストアエントリから証明書のハッシュ (SHA-1、SHA-256 など) を生成します。

    表 : 6. パラメーター
    名前 タイプ 説明
    証明書 ID 文字列 X.509 証明書 [sys_certificate] テーブルの証明書レコードのSys_id。
    エイリアス 文字列 証明書のエイリアス名。
    アルゴリズム 文字列 SHA-1、SHA-256 など、ハッシュの作成に使用するアルゴリズム。
    表 : 7. 返される内容
    タイプ 説明
    文字列 base64 形式のサムプリント。

    CertificateEncryption - sign(String certificateID, String alias, String aliaspassword, String algorithm, String datatosign)

    秘密鍵と指定されたアルゴリズムを使用してデータに署名します。

    表 : 8. パラメーター
    名前 タイプ 説明
    証明書 ID 文字列 X.509 証明書 [sys_certificate] テーブルの証明書レコードのsys_id。
    エイリアス 文字列 秘密鍵の名前。
    エイリアスパスワード 文字列 秘密鍵のパスワード。
    アルゴリズム 文字列 使用するアルゴリズム。次のいずれかの値である必要があります。
    • なし RSA あり
    • MD2withRSA
    • MD5とRSA
    • SHA1withRSA
    • SHA224とRSA
    • SHA256RSA付き
    • SHA384とRSA
    • SHA512(RSA付き)
    • DSA なし
    • SHA1withDSA
    • SHA224DSA 付き
    • SHA256DSA付き
    • なしECDSA あり
    • SHA1withECDSA
    • SHA224ECDSA 付き
    • SHA256ECDSA付き
    • SHA384ECDSA 付き
    • SHA512ECDSA付き
    datatosign 文字列 署名するデータ。
    表 : 9. 返される内容
    タイプ 説明
    文字列 base64 形式の署名付きデータ。
    var ce = new CertificateEncryption;
    ce.sign("recordID", "alias", "password", "SHA1withRSA", "sign this data");