CertSetCRLContextProperty 関数 (wincrypt.h)
CertSetCRLContextProperty 関数は、指定された証明書失効リスト (CRL) コンテキストの拡張プロパティを設定します。
構文
BOOL CertSetCRLContextProperty(
[in] PCCRL_CONTEXT pCrlContext,
[in] DWORD dwPropId,
[in] DWORD dwFlags,
[in] const void *pvData
);
パラメーター
[in] pCrlContext
CRL_CONTEXT構造体へのポインター。
[in] dwPropId
設定するプロパティを識別します。 dwPropId の値によって、pvData パラメーターの種類と内容が決まります。 現在定義されている識別子と pvData で返されるデータ型を次の表に示します。
通常、次のプロパティのみが設定されます。
- CERT_HASH_PROP_ID
- CERT_SHA1_HASH_PROP_ID
- CERT_MD5_HASH_PROP_ID
- CERT_SIGNATURE_HASH_PROP_ID
値 | 意味 |
---|---|
|
pvData のデータ型: DWORD へのポインター
証明書への書き込み操作を永続化するかどうかを示す DWORD 値を設定します。 証明書がメモリ ストア内にある場合、または読み取り専用として開かれたレジストリ ベースのストアにある場合、 DWORD 値は設定されません。 |
|
pvData のデータ型: NULL
列挙中に証明書がスキップされたことを示します。 このプロパティ セットを持つ証明書は、特定のハッシュまたはシリアル番号を持つ証明書の検索に使用される明示的な検索操作で見つかります。 pvData 内のデータは、このプロパティに関連付けされません。 |
|
pvData のデータ型: BYTE 配列へのポインター 証明書が自動登録されている証明書の種類に名前を付ける 、null で終わる Unicode 文字列を設定します。 |
|
pvData のデータ型: BYTE 配列へのポインター |
|
pvData のデータ型: BYTE 配列へのポインター 証明書 UI によって表示されるプロパティを設定します。 このプロパティを使用すると、ユーザーは証明書の使用方法を説明できます。 |
|
pvData のデータ型: ASN.1 でエンコードされたCERT_ENHKEY_USAGE構造体を含むバイト配列 を 設定します。 |
|
pvData のデータ型: BYTE 配列へのポインター CRL の表示名を含む null で終わる Unicode 文字列を設定します。 |
|
pvData のデータ型: CRYPT_DATA_BLOB構造体へのポインター。
L"<PUBKEY>/<BITLENGTH>" 公開キー アルゴリズムとビット長ペアのセットを含む文字列を設定します。 区切り記号としてセミコロン L";"が使用されます。 PUBKEY> 値は<、CNG 公開キー アルゴリズムを識別します。 次のアルゴリズムがサポートされています。
メモ 委任された OCSP 署名者証明書には、このプロパティを設定しないでください。 委任された署名者証明書は、サブジェクト証明書の署名に使用されるのと同じキーで署名され、そこで確認されます。
: L"RSA/2048;RSA/4096" |
|
pvData のデータ型: CRYPT_DATA_BLOB構造体へのポインター。
L"<SIGNATURE>/<HASH>" アルゴリズムペアのセットを含む文字列を設定します。 セミコロン L";"は、ペア間の区切り記号として使用されます。 このプロパティは、OCSP 応答が CRL に変換された場合にのみ設定されます。 委任された OCSP 署名者証明書の場合、署名者証明書のアルゴリズム ペアのみが返されます。 独立した OCSP 署名者証明書チェーンの場合、ルートを除くチェーン内の各証明書に対してアルゴリズム ペアが返されます。 SIGNATURE> 値は<、CNG 公開キー アルゴリズムを識別します。 次のアルゴリズムがサポートされています。
|
|
pvData のデータ型: CRYPT_DATA_BLOB構造体へのポインター。
CRL 発行者証明書の公開キーの長さをビット単位で設定します。 このプロパティは、CRL に変換された OCSP にも適用できます。 このプロパティは、検証失効関数によって明示的に設定されます。 Windows 8とWindows Server 2012: このプロパティのサポートが開始されます。 |
|
pvData のデータ型: CERT_KEY_CONTEXTへのポインター
CERT_KEY_CONTEXT構造体を設定します。 |
|
pvData のデータ型: BYTE 配列へのポインター |
|
pvData のデータ型: HCRYPTPROV へのポインター
CERT_KEY_CONTEXT_PROP_IDから取得したプロバイダー ハンドルを設定します。 |
|
pvData のデータ型: CRYPT_KEY_PROV_INFOへのポインター
CRYPT_KEY_PROV_INFO構造体へのポインターを設定します。 |
|
pvData のデータ型: DWORD へのポインター
プロパティから取得した秘密キーが存在する場合CERT_KEY_CONTEXT_PROP_ID指定する DWORD 値を設定します。 それ以外の場合CERT_KEY_PROV_INFO_PROP_ID存在する場合は、 dwKeySpec のソースになります。 |
|
pvData のデータ型: BYTE 配列へのポインター MD5 ハッシュを設定します。 ハッシュは、CryptHashCertificate 関数を使用して計算できます。 |
|
pvData のデータ型: BYTE 配列へのポインター ASN.1 でエンコードされた CERT_ALT_NAME_INFO 構造体を CTL に設定します。 |
|
pvData のデータ型: BYTE 配列へのポインター 証明書の公開キーに関連付けられている秘密キーを含むファイルの名前を指定する 、null で終わる Unicode のワイド文字列を設定します。 |
|
pvData のデータ型: BYTE 配列へのポインター SHA1 ハッシュを設定します。 ハッシュは 、CryptHashCertificate を使用して計算できます。 |
|
pvData のデータ型: CRYPT_DATA_BLOB構造体へのポインター。
証明書の署名を表す L"<SIGNATURE>/<HASH>" 文字列を設定します。 SIGNATURE> 値は<、CNG 公開キー アルゴリズムを識別します。 次のアルゴリズムがサポートされています。
このプロパティは、検証失効関数によって明示的に設定されます。 Windows 8とWindows Server 2012: このプロパティのサポートが開始されます。 |
|
pvData のデータ型: BYTE 配列へのポインター 署名ハッシュを設定します。 ハッシュが存在しない場合は、 CryptHashToBeSigned を使用して計算されます。 ハッシュの長さは、SHA の場合は 20 バイト、MD5 の場合は 16 バイトです。 |
ユーザーは、CERT_FIRST_USER_PROP_IDからCERT_LAST_USER_PROP_IDまでの DWORD 値を使用して、追加の dwPropId 型を定義できます。 すべてのユーザー定義 dwPropId 型について、 pvData はエンコードされたCRYPT_DATA_BLOBを指 します。
その他のすべてのプロパティ識別子について、 pvData はエンコードされた CRYPT_DATA_BLOB 構造体を指します。
[in] dwFlags
CERT_STORE_NO_CRYPT_RELEASE_FLAGは、CERT_KEY_PROV_HANDLE_PROP_IDまたは dwPropId プロパティCERT_KEY_CONTEXT_PROP_ID設定できます。
CERT_SET_PROPERTY_IGNORE_PERSIST_ERROR_FLAG値が設定されている場合、プロバイダー/書き込みエラーはすべて無視され、キャッシュされたコンテキストのプロパティは常に設定されます。
CERT_SET_PROPERTY_INHIBIT_PERSIST_FLAGが設定されている場合、プロパティ セットは保持されません。
[in] pvData
dwPropId で渡された値によって決定されるデータ型へのポインター。
戻り値
関数が成功した場合、戻り値は TRUE になります。
関数が失敗した場合、戻り値は FALSE になります。 拡張エラー情報については、 GetLastError を呼び出します。 考えられるエラー コードの 1 つは次のとおりです。
リターン コード | 説明 |
---|---|
|
プロパティが無効です。 指定された識別子が0x0000FFFFより大きいか、CERT_KEY_CONTEXT_PROP_ID プロパティに対して、無効な cbSize メンバーが CERT_KEY_CONTEXT 構造体で指定されました。 |
注釈
プロパティが既に存在する場合は、その古い値が置き換えられます。
例
この関数を使用する例については、「 サンプル C プログラム: 証明書のプロパティの取得と設定」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows XP [デスクトップ アプリ | UWP アプリ] |
サポートされている最小のサーバー | Windows Server 2003 [デスクトップ アプリのみ | UWP アプリ] |
対象プラットフォーム | Windows |
ヘッダー | wincrypt.h |
Library | Crypt32.lib |
[DLL] | Crypt32.dll |