Freigeben über


SpQueryMetaDataFn-Rückruffunktion (ntsecpkg.h)

Ruft Metadaten von einem Sicherheitsunterstützungsanbieter (Security Support Provider , SSP) ab, wenn dieser einen Sicherheitskontext initiiert.

Syntax

SpQueryMetaDataFn Spquerymetadatafn;

NTSTATUS Spquerymetadatafn(
  [in]           LSA_SEC_HANDLE CredentialHandle,
  [in, optional] PUNICODE_STRING TargetName,
  [in]           ULONG ContextRequirements,
  [out]          PULONG MetaDataLength,
  [out]          PUCHAR *MetaData,
  [in, out]      PLSA_SEC_HANDLE ContextHandle
)
{...}

Parameter

[in] CredentialHandle

Ein Handle für die Anmeldeinformationen , die für den Sicherheitskontext verwendet werden sollen. Wenn der ContextHandle-Parameter bei der Eingabe auf NULL zeigt, verwendet diese Funktion den Wert dieses Parameters, um einen Sicherheitskontext zu erstellen.

Der Wert dieses Parameters darf nicht NULL sein, wenn der ContextHandle-Parameter bei der Eingabe auf NULL zeigt.

[in, optional] TargetName

Ein Zeiger auf einen UNICODE_STRING , der den Namen des Ziels des Kontexts enthält.

[in] ContextRequirements

Flags, die die vom Client benötigten Kontextattribute angeben.

Die folgenden Werte sind gültig. Werte können mithilfe eines logischen OR-Vorgangs kombiniert werden.

Wert Bedeutung
ISC_REQ_DELEGATE
Der Server darf die Identität des Clients annehmen.
ISC_REQ_MUTUAL_AUTH
Sowohl der Client als auch der Server müssen ihre Identität nachweisen.
ISC_REQ_REPLAY_DETECT
Der Sicherheitskontext unterstützt die Erkennung von wiedergegebenen Paketen.
ISC_REQ_SEQUENCE_DETECT
Der Sicherheitskontext unterstützt die Erkennung von ungeordneten Nachrichten.
ISC_REQ_USE_SESSION_KEY
Ein neuer Sitzungsschlüssel muss ausgehandelt werden.
ISC_REQ_PROMPT_FOR_CREDS
Wenn der Client ein interaktiver Benutzer ist, muss das Paket den Benutzer nach Möglichkeit zur Eingabe der entsprechenden Anmeldeinformationen auffordern.
ISC_REQ_USE_SUPPLIED_CREDS
Der Eingabepuffer enthält paketspezifische Anmeldeinformationen, die zum Authentifizieren der Verbindung verwendet werden sollen.
ISC_REQ_ALLOCATE_MEMORY
Das Paket muss Arbeitsspeicher zuweisen. Der Aufrufer muss schließlich die FreeContextBuffer-Funktion aufrufen, um den vom Paket zugewiesenen Arbeitsspeicher freizugeben.
ISC_REQ_USE_DCE_STYLE
Der Aufrufer erwartet eine Transaktion zur gegenseitigen Authentifizierung mit drei Beinen.
ISC_REQ_DATAGRAM
Es sollte ein Kommunikationskanal vom Typ Datagram verwendet werden. Weitere Informationen finden Sie unter Datagrammkontexte.
ISC_REQ_CONNECTION
Es sollte ein Verbindungstypkommunikationskanal verwendet werden. Weitere Informationen finden Sie unter Verbindungsorientierte Kontexte.
ISC_REQ_EXTENDED_ERROR
Wenn der Kontext fehlschlägt, generieren Sie eine Fehlermeldung, die an den Client zurück gesendet wird.
ISC_REQ_STREAM
Es sollte ein Streamtypkommunikationskanal verwendet werden. Weitere Informationen finden Sie unter Stream Kontexte.
ISC_REQ_INTEGRITY
Die Pufferintegrität wird überprüft. Es werden jedoch keine wiedergegebenen und nicht wiedergegebenen Nachrichten erkannt.

[out] MetaDataLength

Die Größe des MetaData-Puffers in Zeichen.

[out] MetaData

Die Metadaten, die der SSP bereitstellt.

[in, out] ContextHandle

Ein Handle für das zu verwendende Sicherheitshandle. Wenn dieser Parameter bei der Eingabe auf NULL verweist, weist diese Funktion einen Sicherheitskontext zu und initialisiert diesen mithilfe der Werte der Parameter CredentialHandle und TargetName .

Wenn dieser Parameter bei der Eingabe auf NULL zeigt, kann CredentialHandle nicht NULL sein.

Rückgabewert

Wenn die Funktion erfolgreich ist, geben Sie STATUS_SUCCESS oder einen informationellen status Code zurück.

Wenn die Funktion fehlschlägt, geben Sie einen NTSTATUS-Fehlercode zurück, der den Grund für einen Fehler angibt. Weitere Informationen finden Sie in den Hinweisen.

Hinweise

Ein Zeiger auf die SpQueryMetaDataFn-Funktion ist in der SECPKG_FUNCTION_TABLE Struktur verfügbar, die von der SpLsaModeInitialize-Funktion empfangen wird.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 7 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 R2 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile ntsecpkg.h