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

IX509SCEPEnrollment

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

メソッド 22

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

vtbl 7 HRESULT Initialize(IX509CertificateRequestPkcs10* pRequest, LPWSTR strThumbprint, EncodingType ThumprintEncoding, LPWSTR strServerCertificates, EncodingType Encoding)
pRequestIX509CertificateRequestPkcs10*inoptionalSCEP 登録の基にする PKCS#10 証明書要求 IX509CertificateRequestPkcs10 オブジェクトを渡す。
strThumbprintLPWSTRin登録に使用する署名証明書の拇印を指定エンコーディングの文字列で指定する。
ThumprintEncodingEncodingTypeinstrThumbprint のエンコーディング種別を指定する EncodingType 列挙値である。
strServerCertificatesLPWSTRinSCEP サーバー(CA)の証明書を指定エンコーディングの文字列で渡す。
EncodingEncodingTypeinstrServerCertificates のエンコーディング種別を指定する EncodingType 列挙値である。
vtbl 8 HRESULT InitializeForPending(X509CertificateEnrollmentContext Context)
ContextX509CertificateEnrollmentContextin保留中の SCEP 要求を扱う登録コンテキストを指定する X509CertificateEnrollmentContext 列挙値である。
vtbl 9 HRESULT CreateRequestMessage(EncodingType Encoding, LPWSTR* pValue)
EncodingEncodingTypein生成する要求メッセージ文字列のエンコーディング種別を指定する EncodingType 列挙値である。
pValueLPWSTR*out生成された SCEP 要求(PKICertReq)メッセージを指定エンコーディングの文字列として受け取るポインタである。
vtbl 10 HRESULT CreateRetrievePendingMessage(EncodingType Encoding, LPWSTR* pValue)
EncodingEncodingTypein生成するメッセージ文字列のエンコーディング種別を指定する EncodingType 列挙値である。
pValueLPWSTR*out保留中要求の状態を問い合わせる SCEP メッセージを指定エンコーディングの文字列として受け取るポインタである。
vtbl 11 HRESULT CreateRetrieveCertificateMessage(X509CertificateEnrollmentContext Context, LPWSTR strIssuer, EncodingType IssuerEncoding, LPWSTR strSerialNumber, EncodingType SerialNumberEncoding, EncodingType Encoding, LPWSTR* pValue)
ContextX509CertificateEnrollmentContextinメッセージ作成時の登録コンテキストを指定する X509CertificateEnrollmentContext 列挙値である。
strIssuerLPWSTRin取得対象証明書の発行者を指定エンコーディングの文字列で指定する。
IssuerEncodingEncodingTypeinstrIssuer のエンコーディング種別を指定する EncodingType 列挙値である。
strSerialNumberLPWSTRin取得対象証明書のシリアル番号を指定エンコーディングの文字列で指定する。
SerialNumberEncodingEncodingTypeinstrSerialNumber のエンコーディング種別を指定する EncodingType 列挙値である。
EncodingEncodingTypein生成するメッセージ文字列のエンコーディング種別を指定する EncodingType 列挙値である。
pValueLPWSTR*out発行済み証明書を取得する SCEP メッセージを指定エンコーディングの文字列として受け取るポインタである。
vtbl 12 HRESULT ProcessResponseMessage(LPWSTR strResponse, EncodingType Encoding, X509SCEPDisposition* pDisposition)
strResponseLPWSTRinSCEP サーバーから受け取った応答メッセージを指定エンコーディングの文字列で渡す。
EncodingEncodingTypeinstrResponse のエンコーディング種別を指定する EncodingType 列挙値である。
pDispositionX509SCEPDisposition*out応答処理の結果(成功/保留/失敗)を表す X509SCEPDisposition 値を受け取るポインタである。
vtbl 13 HRESULT put_ServerCapabilities(LPWSTR Value)
ValueLPWSTRinSCEP サーバーがサポートする機能(GetCACaps の応答)を文字列で指定する。
vtbl 14 HRESULT get_FailInfo(X509SCEPFailInfo* pValue)
pValueX509SCEPFailInfo*outSCEP 要求が失敗した場合の理由を表す X509SCEPFailInfo 値を受け取るポインタである。
vtbl 15 HRESULT get_SignerCertificate(ISignerCertificate** ppValue)
ppValueISignerCertificate**outSCEP メッセージの署名に使用する署名証明書を表す ISignerCertificate オブジェクトを受け取るポインタである。
vtbl 16 HRESULT put_SignerCertificate(ISignerCertificate* pValue)
pValueISignerCertificate*inoptionalSCEP メッセージの署名に使用する署名証明書を表す ISignerCertificate オブジェクトを渡す。
vtbl 17 HRESULT get_OldCertificate(ISignerCertificate** ppValue)
ppValueISignerCertificate**out更新元となる旧証明書を表す ISignerCertificate オブジェクトを受け取るポインタである。
vtbl 18 HRESULT put_OldCertificate(ISignerCertificate* pValue)
pValueISignerCertificate*inoptional更新元となる旧証明書を表す ISignerCertificate オブジェクトを渡す。
vtbl 19 HRESULT get_TransactionId(EncodingType Encoding, LPWSTR* pValue)
EncodingEncodingTypein取得するトランザクション ID 文字列のエンコーディング種別を指定する EncodingType 列挙値である。
pValueLPWSTR*outSCEP トランザクション ID を指定エンコーディングの文字列として受け取るポインタである。
vtbl 20 HRESULT put_TransactionId(EncodingType Encoding, LPWSTR Value)
EncodingEncodingTypein渡すトランザクション ID 文字列のエンコーディング種別を指定する EncodingType 列挙値である。
ValueLPWSTRinSCEP トランザクション ID を指定エンコーディングの文字列として渡す。
vtbl 21 HRESULT get_Request(IX509CertificateRequestPkcs10** ppValue)
ppValueIX509CertificateRequestPkcs10**outこの SCEP 登録に関連付けられた PKCS#10 証明書要求 IX509CertificateRequestPkcs10 オブジェクトを受け取るポインタである。
vtbl 22 HRESULT get_CertificateFriendlyName(LPWSTR* pValue)
pValueLPWSTR*out発行された証明書の表示名(フレンドリ名)を文字列として受け取るポインタである。
vtbl 23 HRESULT put_CertificateFriendlyName(LPWSTR Value)
ValueLPWSTRin発行された証明書に設定する表示名(フレンドリ名)を文字列で指定する。
vtbl 24 HRESULT get_Status(IX509EnrollmentStatus** ppValue)
ppValueIX509EnrollmentStatus**outSCEP 登録の処理状態を表す IX509EnrollmentStatus オブジェクトを受け取るポインタである。
vtbl 25 HRESULT get_Certificate(EncodingType Encoding, LPWSTR* pValue)
EncodingEncodingTypein取得する証明書文字列のエンコーディング種別を指定する EncodingType 列挙値である。
pValueLPWSTR*outSCEP 登録で発行された証明書を指定エンコーディングの文字列として受け取るポインタである。
vtbl 26 HRESULT get_Silent(VARIANT_BOOL* pValue)
pValueVARIANT_BOOL*outサイレント(UI を抑制する)モードが有効かどうかを表す VARIANT_BOOL を受け取るポインタである。
vtbl 27 HRESULT put_Silent(VARIANT_BOOL Value)
ValueVARIANT_BOOLinUI を表示しないサイレントモードの有効・無効を VARIANT_BOOL で指定する。
vtbl 28 HRESULT DeleteRequest()

HSP用 COM定義

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

出力引数:
#define global IID_IX509SCEPEnrollment "{728AB361-217D-11DA-B2A4-000E7BBB2B09}"
#usecom global IX509SCEPEnrollment IID_IX509SCEPEnrollment "{}"
#comfunc global IX509SCEPEnrollment_Initialize                        7 sptr,wstr,int,wstr,int
#comfunc global IX509SCEPEnrollment_InitializeForPending              8 int
#comfunc global IX509SCEPEnrollment_CreateRequestMessage              9 int,var
#comfunc global IX509SCEPEnrollment_CreateRetrievePendingMessage      10 int,var
#comfunc global IX509SCEPEnrollment_CreateRetrieveCertificateMessage  11 int,wstr,int,wstr,int,int,var
#comfunc global IX509SCEPEnrollment_ProcessResponseMessage            12 wstr,int,var
#comfunc global IX509SCEPEnrollment_put_ServerCapabilities            13 wstr
#comfunc global IX509SCEPEnrollment_get_FailInfo                      14 var
#comfunc global IX509SCEPEnrollment_get_SignerCertificate             15 sptr
#comfunc global IX509SCEPEnrollment_put_SignerCertificate             16 sptr
#comfunc global IX509SCEPEnrollment_get_OldCertificate                17 sptr
#comfunc global IX509SCEPEnrollment_put_OldCertificate                18 sptr
#comfunc global IX509SCEPEnrollment_get_TransactionId                 19 int,var
#comfunc global IX509SCEPEnrollment_put_TransactionId                 20 int,wstr
#comfunc global IX509SCEPEnrollment_get_Request                       21 sptr
#comfunc global IX509SCEPEnrollment_get_CertificateFriendlyName       22 var
#comfunc global IX509SCEPEnrollment_put_CertificateFriendlyName       23 wstr
#comfunc global IX509SCEPEnrollment_get_Status                        24 sptr
#comfunc global IX509SCEPEnrollment_get_Certificate                   25 int,var
#comfunc global IX509SCEPEnrollment_get_Silent                        26 var
#comfunc global IX509SCEPEnrollment_put_Silent                        27 int
#comfunc global IX509SCEPEnrollment_DeleteRequest                     28
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。
; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。