ICertAdmin::GetRevocationReason メソッド (certadm.h)
GetRevocationReason メソッドは、証明書が取り消された理由を返します。 このメソッドは、最初に ICertAdmin インターフェイスで定義されました。
このメソッドを呼び出す前に、 IsValidCertificate メソッドを呼び出す必要があります。 詳細については、「解説」を参照してください。
構文
HRESULT GetRevocationReason(
[out] LONG *pReason
);
パラメーター
[out] pReason
失効理由を受け取る変数へのポインター。
戻り値
C++
メソッドが成功した場合、メソッドは S_OKを返し、 pReason パラメーターは次の表に示す値のいずれかに設定されます。メソッドが失敗した場合は、エラーを示す HRESULT 値を返します。 一般的なエラー コードの一覧については、「 共通 HRESULT 値」を参照してください。
VB
証明書が取り消された理由を示す値を返します。 値には、次のいずれかの失効理由コードを指定できます (Wincrypt.h で定義されています)。リターン コード | 説明 |
---|---|
|
失効の理由が指定されませんでした。 |
|
証明書で検証されたサブジェクトの秘密キーまたはその他の側面が侵害されていることが知られているか、疑われます。 |
|
証明書で検証された CA の秘密キーまたはその他の側面が侵害されていることが知られているか、疑われます。 |
|
サブジェクトの名前または証明書内の他の情報は変更されましたが、秘密キーが侵害されたと疑われる原因はありません。 |
|
証明書は置き換えられますが、秘密キーが侵害されたと疑われる原因はありません。 |
|
証明書は発行された目的で不要になりましたが、秘密キーが侵害されたと疑われる原因はありません。 |
|
証明書が保留にされました。 |
解説
GetRevocationReason を呼び出す前に、IsValidCertificate メソッドを呼び出して証明書の処理を取得します。 GetRevocationReason を呼び出すには、この前の呼び出しから証明書処理CA_DISP_REVOKEDを受け取り、証明書が取り消されたことを示す必要があります。 IsValidCertificate を呼び出すと、失効理由を取得する証明書の ID が確立されます。
管理タスクでは DCOM を使用します。 以前のバージョンの Certadm.h で定義されているこのインターフェイス メソッドを呼び出すコードは、クライアントとサーバーの両方が同じ Windows オペレーティング システムを実行している限り、Windows ベースのサーバー上で実行されます。
例
// The value for nDisp was set by
// a call to ICertAdmin2::IsValidCertificate.
if (CA_DISP_REVOKED == nDisp)
{
// Variable to contain revocation reason.
long nReason;
// Retrieve the revocation reason.
hr = pCertAdmin->GetRevocationReason(&nReason);
if (FAILED(hr))
{
printf("Failed GetRevocationReason [%x]\n", hr);
goto error;
}
else
printf("Revocation reason = %d\n", nReason );
}
要件
サポートされている最小のクライアント | サポートなし |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
対象プラットフォーム | Windows |
ヘッダー | certadm.h (Certsrv.h を含む) |
Library | Certidl.lib |
[DLL] | Certadm.dll |