ICertServerExit::GetRequestProperty メソッド (certif.h)

GetRequestProperty メソッドは、要求から名前付きプロパティを返します。

要求は、要求に関連付けられているすべての状態と、証明書の一部ではない最終的に付与された証明書を保持するために使用されることに注意してください。 したがって、失効時刻や廃棄データなどのデータは、要求データ オブジェクトに保持されます。

構文

HRESULT GetRequestProperty(
  [in]  const BSTR strPropertyName,
  [in]  LONG       PropertyType,
  [out] VARIANT    *pvarPropertyValue
);

パラメーター

[in] strPropertyName

取得するプロパティを指定します。 name プロパティと呼ばれる証明書プロパティのストック セットがあり、これは常に有効であり、このメソッドを呼び出すことによって取得できます。 これらのプロパティの詳細については、「 名前のプロパティ」を参照してください。

証明書要求に有効なその他のプロパティには、要求プロパティが含まれます。

メモ 要求の DistinguishedName プロパティと RawName プロパティは、証明書が PKCS #10 証明書要求またはエンコードされたサブジェクト名情報を含む別のサポートされている要求形式を使用して要求された場合にのみ 、GetRequestProperty からアクセスできます。 KeyGen 要求には、エンコードされたサブジェクト名情報が含まれていないことに注意してください。
 

次のプロパティは要求に固有であり、 GetRequestProperty メソッドを使用してアクセスできます。

Request プロパティ 意味
Disposition
署名された長い
現在の要求の処理
DispositionMessage
文字列
情報処理メッセージ
RawCACertificate
Binary
発行元 証明機関の証明書
RawRequest
Binary
未加工の要求バイト数
RequestAttributes
文字列
属性文字列 (切り捨て可能)
RequesterName
文字列
"DomainName\UserID" という形式の要求者の名前
RequestID
署名された長い
内部 requestID
RequestType
署名された長い
PKCS #10 または KeyGen 要求を示します
ResolvedWhen
日付/時刻
解決された場合
StatusCode
署名された長い
最後の操作の Windows エラー
SubmittedWhen
日付/時刻
到着した日時
 

RequestType プロパティは、次のいずれかの値になります。

意味
CR_IN_PKCS7
PKCS #7 の更新または登録要求
CR_IN_PKCS10
PKCS #10 要求
CR_IN_KEYGEN
Keygen 要求 (Netscape 形式)
 

さらに、他のプロパティは、特定の要求の種類、要求拡張機能、または要求のヘッダーに設定された名前付き属性によって設定できます。

[in] PropertyType

プロパティの種類を指定します。 型には、次のいずれかの型を指定できます。

意味
PROPTYPE_LONG
署名された長いデータ
PROPTYPE_DATE
日付/時刻
PROPTYPE_BINARY
Binary Data
PROPTYPE_STRING
Unicode 文字列データ

[out] pvarPropertyValue

要求プロパティ型を含む VARIANT へのポインター。

戻り値

C++

メソッドが成功した場合、メソッドは S_OKを返し、*pvarPropertyValue は要求プロパティ値を含む VARIANT に設定されます。

メソッドが失敗した場合は、エラーを示す HRESULT 値を返します。 一般的なエラー コードの一覧については、「 共通 HRESULT 値」を参照してください。

VB

戻り値は要求プロパティの値です。

注釈

このメソッドを使用する前に 、ICertServerExit::SetContext を呼び出す必要があります。

BSTR      bstrPropName = NULL;
VARIANT   varProp;

VariantInit( &varProp );

bstrPropName = SysAllocString(L"RequestID");

// Retrieve the request property.
// pCertServerExit has been used to call SetContext previously.
hr = pCertServerExit->GetRequestProperty( bstrPropName,
                                          PROPTYPE_LONG,
                                          &varProp );
if (FAILED(hr))
{
    printf("Failed GetRequestProperty [%x]\n", hr);
    goto error;
}
else
{
    // Successfully retrieved property; use varProp as needed.
    // ...
}

// Done processing.
VariantClear( &varProp );
if ( NULL != bstrPropName )
    SysFreeString( bstrPropName );

要件

要件
サポートされている最小のクライアント サポートなし
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー certif.h (Certsrv.h を含む)
Library Certidl.lib
[DLL] Certcli.dll

こちらもご覧ください

ICertServerExit

ICertServerExit::SetContext

Name プロパティ