Freigeben über


SpExchangeMetaDataFn-Rückruffunktion (ntsecpkg.h)

Sendet Metadaten an einen Sicherheitsunterstützungsanbieter. Die von dieser Funktion gesendeten Metadaten werden durch einen vorherigen Aufruf der SpQueryMetaDataFn-Funktion abgerufen.

Syntax

SpExchangeMetaDataFn Spexchangemetadatafn;

NTSTATUS Spexchangemetadatafn(
  [in]           LSA_SEC_HANDLE CredentialHandle,
  [in, optional] PUNICODE_STRING TargetName,
  [in]           ULONG ContextRequirements,
  [in]           ULONG MetaDataLength,
  [in]           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 eine UNICODE_STRING , die den Namen des Ziels des Kontexts enthält.

[in] ContextRequirements

Flags, die die kontextspezifischen Attribute angeben, die vom Client benötigt werden.

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 Nachrichten in nicht ordnungsgemäßer Reihenfolge.
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 vom Paket zugeordneten Arbeitsspeicher freizugeben.
ISC_REQ_USE_DCE_STYLE
Der Aufrufer erwartet eine transaktionale gegenseitige Authentifizierung mit drei Beinen.
ISC_REQ_DATAGRAM
Es sollte ein Kommunikationskanal vom Typ Datagramm 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, um an den Client zurückzusenden.
ISC_REQ_STREAM
Es sollte ein Kommunikationskanal vom Typ "Stream" verwendet werden. Weitere Informationen finden Sie unter Stream Kontexte.
ISC_REQ_INTEGRITY
Die Pufferintegrität wird überprüft. Wiedergegebene und nicht sequenzbezogene Nachrichten werden jedoch nicht erkannt.

[in] MetaDataLength

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

[in] MetaData

Die zu sendenden Metadaten.

[in, out] ContextHandle

Ein Handle für das zu verwendende Sicherheitshandle. Wenn dieser Parameter bei der Eingabe auf NULL zeigt, ordnet und initialisiert diese Funktion einen Sicherheitskontext 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 den Fehler angibt. Weitere Informationen finden Sie in den Hinweisen.

Hinweise

Ein Zeiger auf die SpExchangeMetaDataFn-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