Win32 API 日本語リファレンス
ホームSecurity.Cryptography.Certificates › ICertAdmin

ICertAdmin

COMIDispatch (デュアル)
IDispatch を実装(デュアルインターフェース)。HSP では comobj 経由でメソッド名による遅延バインド呼び出しができます(vtableインデックス不要)。
IID34df6950-7fb6-11d0-8817-00a0c903b83c継承元IDispatch呼び出し名前(IDispatch) または vtbl自前メソッド開始 vtbl7

メソッド 10

vtbl = vtable インデックス(0始まり)。IDispatch 実装のため HSP ではメソッド名でも呼べます(上記)。低レベルの index 呼び出し用に vtbl も掲載。0〜2 は IUnknown。

vtbl 7 HRESULT IsValidCertificate(LPWSTR strConfig, LPWSTR strSerialNumber, INT* pDisposition)
strConfigLPWSTRin対象の証明機関(CA)の構成文字列をBSTRで指定する。
strSerialNumberLPWSTRin確認する証明書のシリアル番号をBSTRで指定する。
pDispositionINT*out証明書の状態(有効、失効、取り消し等)を表す処理コードを受け取るポインタである。
vtbl 8 HRESULT GetRevocationReason(INT* pReason)
pReasonINT*out直前に確認した証明書の失効理由コードを受け取るポインタである。
vtbl 9 HRESULT RevokeCertificate(LPWSTR strConfig, LPWSTR strSerialNumber, INT Reason, DOUBLE Date)
strConfigLPWSTRin対象の証明機関(CA)の構成文字列をBSTRで指定する。
strSerialNumberLPWSTRin失効させる証明書のシリアル番号をBSTRで指定する。
ReasonINTin証明書を失効させる理由コードを指定する。
DateDOUBLEin証明書の失効日時を表すOLEオートメーション日付(DOUBLE)で指定する。
vtbl 10 HRESULT SetRequestAttributes(LPWSTR strConfig, INT RequestId, LPWSTR strAttributes)
strConfigLPWSTRin対象の証明機関(CA)の構成文字列をBSTRで指定する。
RequestIdINTin属性を設定する対象の要求IDを指定する。
strAttributesLPWSTRin要求に設定する属性を表す文字列(改行区切りの名前=値)をBSTRで指定する。
vtbl 11 HRESULT SetCertificateExtension(LPWSTR strConfig, INT RequestId, LPWSTR strExtensionName, CERT_PROPERTY_TYPE Type, INT Flags, VARIANT* pvarValue)
strConfigLPWSTRin対象の証明機関(CA)の構成文字列をBSTRで指定する。
RequestIdINTin拡張を設定する対象の要求IDを指定する。
strExtensionNameLPWSTRin設定する証明書拡張の名前(OID)をBSTRで指定する。
TypeCERT_PROPERTY_TYPEin拡張値のデータ型(CERT_PROPERTY_TYPE)を指定する。
FlagsINTin拡張の動作を制御するフラグ(クリティカル指定等)を指定する。
pvarValueVARIANT*in拡張に設定する値を格納したVARIANTへのポインタである。
vtbl 12 HRESULT DenyRequest(LPWSTR strConfig, INT RequestId)
strConfigLPWSTRin対象の証明機関(CA)の構成文字列をBSTRで指定する。
RequestIdINTin拒否する対象の保留中の要求IDを指定する。
vtbl 13 HRESULT ResubmitRequest(LPWSTR strConfig, INT RequestId, INT* pDisposition)
strConfigLPWSTRin対象の証明機関(CA)の構成文字列をBSTRで指定する。
RequestIdINTin再送信する対象の要求IDを指定する。
pDispositionINT*out再送信後の要求の処理結果コードを受け取るポインタである。
vtbl 14 HRESULT PublishCRL(LPWSTR strConfig, DOUBLE Date)
strConfigLPWSTRin対象の証明機関(CA)の構成文字列をBSTRで指定する。
DateDOUBLEin発行するCRLの次回更新予定日時を表すOLEオートメーション日付(DOUBLE)で指定する。
vtbl 15 HRESULT GetCRL(LPWSTR strConfig, INT Flags, LPWSTR* pstrCRL)
strConfigLPWSTRin対象の証明機関(CA)の構成文字列をBSTRで指定する。
FlagsINTinCRLの取得形式を制御するフラグを指定する。
pstrCRLLPWSTR*out取得した証明書失効リスト(CRL)を格納した文字列を受け取るポインタである。
vtbl 16 HRESULT ImportCertificate(LPWSTR strConfig, LPWSTR strCertificate, CERT_IMPORT_FLAGS Flags, INT* pRequestId)
strConfigLPWSTRin対象の証明機関(CA)の構成文字列をBSTRで指定する。
strCertificateLPWSTRinインポートする証明書(エンコード済み)をBSTRで指定する。
FlagsCERT_IMPORT_FLAGSin証明書のインポート動作を制御するフラグ(CERT_IMPORT_FLAGS)を指定する。
pRequestIdINT*outインポートされた証明書に割り当てられた要求IDを受け取るポインタである。

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_ICertAdmin "{34DF6950-7FB6-11D0-8817-00A0C903B83C}"
#usecom global ICertAdmin IID_ICertAdmin "{}"
#comfunc global ICertAdmin_IsValidCertificate       7 wstr,wstr,var
#comfunc global ICertAdmin_GetRevocationReason      8 var
#comfunc global ICertAdmin_RevokeCertificate        9 wstr,wstr,int,double
#comfunc global ICertAdmin_SetRequestAttributes     10 wstr,int,wstr
#comfunc global ICertAdmin_SetCertificateExtension  11 wstr,int,wstr,int,int,var
#comfunc global ICertAdmin_DenyRequest              12 wstr,int
#comfunc global ICertAdmin_ResubmitRequest          13 wstr,int,var
#comfunc global ICertAdmin_PublishCRL               14 wstr,double
#comfunc global ICertAdmin_GetCRL                   15 wstr,int,var
#comfunc global ICertAdmin_ImportCertificate        16 wstr,wstr,int,var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。