共用方式為


CryptGetObjectUrl 函式 (wincrypt.h)

CryptGetObjectUrl函式會從憑證憑證信任清單 (CTL ) ,或 (CRL) 取得遠端物件的 URL。

函式會採用 物件、解碼物件,並提供物件中 URL 陣列的指標。 例如,從憑證中,URL 的 CRL 通訊群組清單會位於陣列中。

語法

BOOL CryptGetObjectUrl(
  [in]      LPCSTR           pszUrlOid,
  [in]      LPVOID           pvPara,
  [in]      DWORD            dwFlags,
  [out]     PCRYPT_URL_ARRAY pUrlArray,
  [in, out] DWORD            *pcbUrlArray,
  [out]     PCRYPT_URL_INFO  pUrlInfo,
  [in, out] DWORD            *pcbUrlInfo,
            LPVOID           pvReserved
);

參數

[in] pszUrlOid

識別所要求 URL 的物件 識別碼 指標 (OID) 。 如果pszUrlOid參數的HIWORD為零,LOWORD會指定指定結構類型的整數識別碼。

此參數可以是下列其中一個值。 如需這些值如何影響pvPara參數的資訊,請參閱[意義] 資料行中的標題「For the pvPara parameter」。

意義
URL_OID_CERTIFICATE_ISSUER
提供從憑證的授權單位資訊存取延伸模組或屬性擷取之憑證簽發者的 URL。

針對 pvPara 參數:要求 URL 的簽發者所發出 之CERT_CONTEXT 結構的指標。

URL_OID_CERTIFICATE_CRL_DIST_POINT
提供從憑證 CRL 發佈點延伸模組或屬性擷取之 CRL 發佈點的 URL 清單。

針對 pvPara 參數:要求 CRL 發佈點 之CERT_CONTEXT 結構的指標。

URL_OID_CERTIFICATE_CRL_DIST_POINT_AND_OCSP
提供來自授權單位資訊存取的 OCSP 和 CRL 發佈點 URL 清單, (AIA) 和 CRL 發佈點延伸模組或憑證的屬性。 函式會先傳回任何 CRL 發佈點 URL。 在使用任何 OCSP URL 之前,您必須移除 L「ocsp:」 前置詞。

針對 pvPara 參數:要求 OCSP 和 CRL 發佈點 URL 之CERT_CONTEXT 結構的指標。

URL_OID_CERTIFICATE_OCSP
從授權單位資訊存取提供 OCSP URL, (AIA) 憑證的延伸模組或屬性。

針對 pvPara 參數:要求 OCSP URL 之 CERT_CONTEXT 結構的指標。

URL_OID_CERTIFICATE_OCSP_AND_CRL_DIST_POINT
提供來自授權單位資訊存取的 OCSP 和 CRL 發佈點 URL 清單, (AIA) 和 CRL 發佈點延伸模組或憑證的屬性。 函式會先傳回任何 OCSP URL。 在使用任何 OCSP URL 之前,您必須移除 L「ocsp:」 前置詞。

針對 pvPara 參數:要求 OCSP 和 CRL 發佈點 URL 之CERT_CONTEXT 結構的指標。

URL_OID_CERTIFICATE_ONLY_OCSP
提供來自授權單位資訊存取的 OCSP URL 清單, (AIA) 憑證的延伸模組或屬性。 在使用任何 OCSP URL 之前,您必須移除 L「ocsp:」 前置詞。

針對 pvPara 參數:要求 OCSP URL 之CERT_CONTEXT 結構的指標。

URL_OID_CTL_ISSUER
提供從授權單位資訊存取屬性方法擷取的 CTL 簽發者的 URL,方法編碼在 PKCS #7 CTL 中的每個簽署者資訊中。

針對 pvPara 參數:要求籤署者索引所簽發的簽署者索引 CTL_CONTEXT 結構的指標,其 URL 是由簽署者索引所識別。

URL_OID_CTL_NEXT_UPDATE
提供從授權單位資訊存取 CTL 延伸模組、屬性或簽署者資訊屬性方法擷取之下一個 CTL 更新的 URL。

針對 pvPara 參數:要求下一個更新 URL 的 Signer Index CTL_CONTEXT 結構的指標,以及選擇性的簽署者索引,以防需要檢查簽署者資訊屬性。

URL_OID_CRL_ISSUER
提供從 CRL 上從繼承自主體憑證之屬性擷取的 CRL 簽發者的 URL, (從主體憑證簽發者或主體憑證發佈點延伸模組) 。 它會編碼為授權單位資訊存取延伸模組方法。

針對 pvPara 參數:要求 URL 的簽發者所發出 之CRL_CONTEXT 結構的指標。

URL_OID_CERTIFICATE_FRESHEST_CRL
擷取憑證的最新 CRL 延伸模組或屬性。

針對 pvPara 參數:要求最新 CRL 發佈點之憑證的PCCERT_CONTEXT。

URL_OID_CRL_FRESHEST_CRL
擷取 CRL 的最新 CRL 延伸模組或屬性。

針對 pvPara 參數: CERT_CRL_CONTEXT_PAIR結構的指標 ,其中包含要求最近 CRL 發佈點之憑證的基底 CRL。

URL_OID_CROSS_CERT_DIST_POINT
擷取憑證的跨憑證發佈點延伸模組或屬性。

針對 pvPara 參數:要求跨憑證發佈點的憑證PCCERT_CONTEXT。

URL_OID_CROSS_CERT_SUBJECT_INFO_ACCESS
擷取憑證的跨憑證主體資訊存取延伸模組或屬性。

針對 pvPara 參數:要求跨憑證主體資訊存取的憑證PCCERT_CONTEXT。

[in] pvPara

pszUrlOid值決定的結構。 如需詳細資訊,請參閱 pszUrlOid 參數的描述。

[in] dwFlags

一組旗標,用來取得物件的 URL 定位器。 這可以是零或下列一或多個值的組合。

意義
CRYPT_GET_URL_FROM_PROPERTY
從 物件的 屬性找出 URL, (資料) 的位置。
CRYPT_GET_URL_FROM_EXTENSION
從 物件的延伸模組找出 URL。
CRYPT_GET_URL_FROM_UNAUTH_ATTRIBUTE
從簽署者資訊資料找出未經驗證屬性的 URL。
CRYPT_GET_URL_FROM_AUTH_ATTRIBUTE
從簽署者資訊資料找出已驗證屬性的 URL。

[out] pUrlArray

緩衝區的指標,用來接收值專案的資料。 此參數可以是 Null ,可尋找保存資料所需的緩衝區長度。

如需詳細資訊,請參閱 擷取未知長度的資料

[in, out] pcbUrlArray

DWORD的指標,指定pUrlArray參數所指向之緩衝區的大小,以位元組為單位。 當函式傳回時, DWORD 會包含儲存在緩衝區中的位元組數目。 只有當pUrlArrayNull時,此參數才能為Null

[out] pUrlInfo

CRYPT_URL_INFO 結構的選擇性 指標,可接收值專案的資料。

[in, out] pcbUrlInfo

DWORD的指標,指定pUrlArray參數所指向之緩衝區的大小,以位元組為單位。 當函式傳回時, DWORD 會包含儲存在緩衝區中的位元組數目。

注意 處理緩衝區中傳回的資料時,應用程式必須使用傳回之資料的實際大小。 實際大小可能比輸入上指定的緩衝區大小稍微小一點。 在輸入上,緩衝區大小通常會指定夠大,以確保最大可能的輸出資料會容納在緩衝區中。 在輸出上,此參數所指向的變數會更新,以反映複製到緩衝區的資料實際大小。
 

pvReserved

保留供日後使用,且必須是 Null

傳回值

如果函式成功,函式會傳回非零 (TRUE) 。

如果函式失敗,它會傳回零 (FALSE) 。 如需擴充錯誤資訊,請呼叫 GetLastError

規格需求

   
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限傳統型應用程式]
目標平台 Windows
標頭 wincrypt.h
程式庫 Cryptnet.lib
Dll Cryptnet.dll

另請參閱

遠端物件擷取函式