Share via


TokenBindingGenerateBinding-Funktion (tokenbinding.h)

Erstellt eine Tokenbindung, die den exportierten öffentlichen Schlüssel und die Signatur enthält, indem der angegebene Schlüsseltyp für die Tokenbindung, eine Zielbezeichnerzeichenfolge zum Erstellen und Abrufen des Tokenbindungsschlüssels und die eindeutigen Daten verwendet werden. Diese Funktion gibt bei Bedarf auch den Tokenbindungsbezeichner zurück.

Syntax

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
);

Parameter

[in] keyType

Der zu verwendende ausgehandelte Schlüsseltyp. Verwenden Sie einen Wert aus der Liste der Schlüsseltypen, die Sie durch Aufrufen der Funktion TokenBindingGetKeyTypesClient abgerufen haben.

[in] targetURL

Die Zielzeichenfolge, die in Verbindung mit dem Schlüsseltyp verwendet werden soll, um einen Tokenbindungsschlüssel für die NCrypt-Vorgänge zu generieren oder abzurufen, die den Puffer für den tokenBinding-Parameter erstellen.

[in] bindingType

Der Typ der Tokenbindung, die TokenBindingGenerateBinding generieren soll.

[in] tlsEKM

Ein Zeiger auf den Puffer, der eindeutige Daten enthält.

[in] tlsEKMSize

Die Größe des Puffers, auf den der parameter tlsUnique verweist, in Bytes.

[in] extensionFormat

Das Format, das zum Interpretieren der Daten im parameter extensionData verwendet werden soll. Dieser Wert muss TOKENBINDING_EXTENSION_FORMAT_UNDEFINED werden.

[in] extensionData

Ein Zeiger auf einen Puffer, der Erweiterungsdaten enthält. Der Wert des extensionFormat-Parameters bestimmt, wie diese Daten interpretiert werden.

[out] tokenBinding

Ein Zeiger, der die Adresse des Tokenbindungspuffers empfängt. Verwenden Sie die HeapAlloc-Funktion , um den Arbeitsspeicher für diesen Puffer zuzuweisen, und die HeapFree-Funktion , um diesen Speicher freizugeben.

[out] tokenBindingSize

Zeiger auf eine Variable, die die Größe des Puffers empfängt, der für den tokenBinding-Parameter in Bytes zugewiesen ist.

[out, optional] resultData

Ein Zeiger, der die Adresse des Puffers empfängt, der Ergebnisdaten enthält, die den Tokenbindungsbezeichner der Tokenbindung enthält, die TokenBindingGenerateBinding generiert. Verwenden Sie die HeapAlloc-Funktion , um den Arbeitsspeicher für diesen Puffer zuzuweisen, und die HeapFree-Funktion , um diesen Speicher freizugeben. Geben Sie NULL an, wenn Sie diese Informationen nicht benötigen.

Rückgabewert

Gibt einen status Code zurück, der den Erfolg oder Fehler der Funktion angibt.

Hinweise

Sie können TokenBindingGenerateBinding aus dem Benutzermodus aufrufen.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 10 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2016 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile tokenbinding.h
Bibliothek Tokenbinding.lib
DLL Tokenbinding.dll

Weitere Informationen

HeapAlloc

HeapFree

TOKENBINDING_EXTENSION_FORMAT

TOKENBINDING_RESULT_DATA

TOKENBINDING_TYPE

TokenBindingDeleteBinding

TokenBindingGetKeyTypesClient