Freigeben über


SOCKET_SECURITY_SETTINGS_IPSEC-Struktur (mstcpip.h)

Die SOCKET_SECURITY_SETTINGS_IPSEC-Struktur gibt verschiedene Sicherheitsanforderungen und Einstellungen an, die spezifisch für IPsec sind.

Syntax

typedef struct _SOCKET_SECURITY_SETTINGS_IPSEC {
  SOCKET_SECURITY_PROTOCOL SecurityProtocol;
  ULONG                    SecurityFlags;
  ULONG                    IpsecFlags;
  GUID                     AuthipMMPolicyKey;
  GUID                     AuthipQMPolicyKey;
  GUID                     Reserved;
  UINT64                   Reserved2;
  ULONG                    UserNameStringLen;
  ULONG                    DomainNameStringLen;
  ULONG                    PasswordStringLen;
  wchar_t                  AllStrings[0];
} SOCKET_SECURITY_SETTINGS_IPSEC;

Member

SecurityProtocol

Typ: SOCKET_SECURITY_PROTOCOL

Ein SOCKET_SECURITY_PROTOCOL Wert, der den Typ des Sicherheitsprotokolls angibt, das für den Socket verwendet werden soll. Dieser Member muss auf SOCKET_SECURITY_PROTOCOL_IPSEC festgelegt werden.

SecurityFlags

Typ: ULONG

Eine Reihe von Flags, mit denen Anwendungen bestimmte Sicherheitsanforderungen für einen Socket festlegen können. Die möglichen Werte werden in der Headerdatei Mstcpip.h definiert.

Wert Bedeutung
SOCKET_SETTINGS_GUARANTEE_ENCRYPTION
0x00000001
Gibt an, dass eine garantierte Verschlüsselung des Datenverkehrs erforderlich ist. Dieses Flag sollte festgelegt werden, wenn die Standardrichtlinie Schutzmethoden bevorzugt, die keine Verschlüsselung verwenden. Wenn dieses Flag festgelegt ist und die Verschlüsselung aus irgendeinem Grund nicht möglich ist, werden keine Pakete gesendet und keine Verbindung hergestellt.
SOCKET_SETTINGS_ALLOW_INSECURE
0x00000002
Gibt an, dass Klartextverbindungen zulässig sind. Wenn dieses Flag festgelegt ist, werden einige oder alle gesendeten Pakete als Klartext gesendet, insbesondere wenn die Sicherheit mit dem Peer nicht ausgehandelt werden konnte.
Hinweis Wenn dieses Flag nicht festgelegt ist, wird garantiert, dass Pakete niemals als Klartext gesendet werden, selbst wenn die Sicherheitsverhandlung fehlschlägt.
 

IpsecFlags

Typ: ULONG

Flags für IPsec-Sicherheitseinstellungen. Die möglichen Werte werden in der Headerdatei Mstcpip.h definiert.

Wert Bedeutung
SOCKET_SETTINGS_IPSEC_SKIP_FILTER_INSTANTIATION
0x00000001
Wenn dieses Flag festgelegt ist, wird die IPsec-Filterinstanziierung für den Socket weggelassen. Dieses Flag sollte festgelegt werden, wenn eine Anwendung weiß, dass für den Datenverkehr bereits IPsec-Filter und -Richtlinien vorhanden sind. Anwendungen, die in einer Domäne mit einer IPsec-Richtlinie ausgeführt werden, können dieses Flag ebenfalls festlegen.

AuthipMMPolicyKey

Typ: GUID

Die GUID für den Windows-Filterplattformschlüssel des AuthIP-Standard-Modusanbieterkontexts. Wenn eine Anwendung eine benutzerdefinierte Standard Modusrichtlinie verwenden möchte, sollte sie zuerst die FwpmProviderContextAdd0-Funktion verwenden, um den entsprechenden Anbieterkontext hinzuzufügen und den zurückgegebenen Schlüssel in diesem Member anzugeben. Dieses Feld wird für eine GUID von 0 (null) ignoriert.

AuthipQMPolicyKey

Typ: GUID

Der Windows-Filterplattformschlüssel des AuthIp-Schnellmodusanbieterkontexts. Wenn eine Anwendung eine benutzerdefinierte Schnellmodusrichtlinie verwenden möchte, sollte sie zuerst die FwpmProviderContextAdd0-Funktion verwenden, um den entsprechenden Anbieterkontext hinzuzufügen und den zurückgegebenen Schlüssel in diesem Feld anzugeben. Dieses Feld wird für eine GUID von 0 (null) ignoriert.

Reserved

Typ: GUID

Für die zukünftige Verwendung reserviert.

Reserved2

Typ: UINT64

Für die zukünftige Verwendung reserviert.

UserNameStringLen

Typ: ULONG

Die Länge des Benutzernamens im AllStrings-Element in Bytes.

DomainNameStringLen

Typ: ULONG

Die Länge des Domänennamens im AllStrings-Element in Byte.

PasswordStringLen

Typ: ULONG

Die Länge des Kennworts im AllStrings-Element in Byte.

AllStrings[0]

Typ: wchar_t[]

Eine Zeichenfolge, die den Benutzernamen, den Domänennamen und das Kennwort enthält, die in dieser Reihenfolge verkettet sind.

Hinweise

Die SOCKET_SECURITY_SETTINGS_IPSEC-Struktur wird unter Windows Vista und höher unterstützt.

Die SOCKET_SECURITY_SETTINGS_IPSEC-Struktur soll von einer erweiterten Anwendung verwendet werden, die mehr Flexibilität erfordert und die IPSec-Richtlinie für ihren Datenverkehr anpassen möchte. Der Zeiger auf die SOCKET_SECURITY_SETTINGS_IPSEC-Struktur muss beim Aufrufen der WSASetSocketSecurity-Funktion in den SOCKET_SECURITY_SETTINGS Strukturtyp umgewandelt werden, um die Sicherheit für einen Socket zu aktivieren und anzuwenden.

Das SecurityProtocol-Element der SOCKET_SECURITY_SETTINGS_IPSEC-Struktur muss auf SOCKET_SECURITY_PROTOCOL_IPSEC und nicht auf SOCKET_SECURITY_PROTOCOL_DEFAULT festgelegt werden.

Um die Bereitstellung der Internetprotokollsicherheit (Internet Protocol Security, IPsec) zu vereinfachen, unterstützen Windows Vista und höher eine erweiterte Version des IKE-Protokolls (Internet Key Exchange), das als authentifizierte Internetprotokoll (AuthIP) bezeichnet wird. AuthIP bietet vereinfachte IPsec-Richtlinienkonfiguration und -wartung in vielen Konfigurationen sowie zusätzliche Flexibilität für die IPsec-Peerauthentifizierung.

Es besteht die Möglichkeit, dass sich einige der in der SOCKET_SECURITY_SETTINGS_IPSEC-Struktur angegebenen IPsec-Einstellungen von den tatsächlichen Einstellungen unterscheiden, die auf den Netzwerkdatenverkehr in einem Socket angewendet werden. Dies kann beispielsweise der Fall sein, wenn eine Anwendung benutzerdefinierte Standard- oder Schnellmodusrichtlinie angibt, aber eine andere Richtlinie mit einer höheren Priorität (z. B. eine Domänenrichtlinie) in Konflikt stehende Einstellungen für denselben Datenverkehr angibt. Um solche Konflikte zu beachten, kann eine Anwendung die Windows-Filterplattform-API verwenden, um die angewendete Richtlinie abzufragen und Benachrichtigungen zu abonnieren.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 [nur Desktop-Apps]
Kopfzeile mstcpip.h

Weitere Informationen

Informationen zur Windows-Filterplattform

FwpmProviderContextAdd0

SOCKET_SECURITY_PROTOCOL

SOCKET_SECURITY_SETTINGS

Verwenden von Secure Socket-Erweiterungen

WSASetSocketSecurity

Windows-Filterplattform

API-Funktionen der Windows-Filterplattform

Winsock Secure Socket-Erweiterungen