TokenBindingGenerateBinding 函式 (tokenbinding.h)

建構一個權杖系結,其中包含匯出的公開金鑰和簽章,方法是使用權杖系結的指定金鑰類型、用來建立和擷取權杖系結金鑰的目標識別碼字串,以及唯一的資料。 如有需要,此函式也會傳回權杖系結識別碼。

語法

SECURITY_STATUS TokenBindingGenerateBinding(
  [in]            TOKENBINDING_KEY_PARAMETERS_TYPE keyType,
  [in]            PCWSTR                           targetURL,
  [in]            TOKENBINDING_TYPE                bindingType,
  [in]            const void                       *tlsEKM,
  [in]            DWORD                            tlsEKMSize,
  [in]            TOKENBINDING_EXTENSION_FORMAT    extensionFormat,
  [in]            const void                       *extensionData,
  [out]           void                             **tokenBinding,
  [out]           DWORD                            *tokenBindingSize,
  [out, optional] TOKENBINDING_RESULT_DATA         **resultData
);

參數

[in] keyType

要使用的交涉索引鍵類型。 從您呼叫 TokenBindingGetKeyTypesClient 函式擷取的金鑰類型清單中使用值。

[in] targetURL

要與索引鍵類型搭配使用的目標字串,為建置 tokenBinding 參數的 NCrypt 作業產生或擷取權杖系結金鑰。

[in] bindingType

TokenBindingGenerateBinding應該產生的權杖系結類型。

[in] tlsEKM

緩衝區的指標,其中包含唯一的資料。

[in] tlsEKMSize

tlsUnique參數指向的緩衝區大小,以位元組為單位。

[in] extensionFormat

用來解譯 extensionData 參數中資料的格式。 此值必須 TOKENBINDING_EXTENSION_FORMAT_UNDEFINED

[in] extensionData

包含延伸資料之緩衝區的指標。 extensionFormat參數的值會決定如何解譯此資料。

[out] tokenBinding

接收權杖系結緩衝區位址的指標。 使用 HeapAlloc 函式來配置此緩衝區的記憶體, 以及 HeapFree 函式以釋放該記憶體。

[out] tokenBindingSize

變數的指標,該變數會以位元組為單位接收為 tokenBinding 參數配置的緩衝區大小。

[out, optional] resultData

接收緩衝區位址的指標,其中包含 TokenBindingGenerateBinding 產生的權杖系結權杖系結識別碼的結果資料。 使用 HeapAlloc 函式來配置此緩衝區的記憶體, 以及 HeapFree 函式以釋放該記憶體。 指定 Null 是您不需要這項資訊。

傳回值

傳回狀態碼,指出函式的成功或失敗。

備註

您可以從使用者模式呼叫 TokenBindingGenerateBinding

規格需求

   
最低支援的用戶端 Windows 10 [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2016 [僅限傳統型應用程式]
目標平臺 Windows
標頭 tokenbinding.h
程式庫 Tokenbinding.lib
DLL Tokenbinding.dll

另請參閱

HeapAlloc

HeapFree

TOKENBINDING_EXTENSION_FORMAT

TOKENBINDING_RESULT_DATA

TOKENBINDING_TYPE

TokenBindingDeleteBinding

TokenBindingGetKeyTypesClient