XAddr-Validierungsregeln
Transportadressen (XAddrs), die in ProbeMatches- und ResolveMatches-Nachrichten enthalten sind, unterliegen einer grundlegenden Überprüfung, bevor WSDAPI eine HTTP-Nachricht sendet, z. B. eine Metadatenanforderung.
Dadurch wird sichergestellt, dass sich die XAddrs im gleichen Subnetz wie der Client befinden.
Der folgende XML-Code zeigt ein XAddrs-Beispielelement. Das wsd-Präfix verweist auf den Namespace https://schemas.xmlsoap.org/ws/2005/04/discovery .
<wsd:XAddrs>
https://192.168.0.2:5357/37f86d35-e6ac-4241-964f-1d9ae46fb366
</wsd:XAddrs>
Alle folgenden Bedingungen müssen erfüllt sein, bevor die HTTP-Nachricht über das Netzwerk gesendet wird.
- XAddrs müssen HTTP- oder HTTPS-Adressen sein. XAddrs anderer Schemas werden ignoriert.
- Wenn HTTPS-XAddrs vorhanden sind, müssen alle XAddrs HTTPS sein. XAddr-Abschnitte, die sowohl HTTP- als auch HTTPS-Adressen enthalten, werden vollständig ignoriert. Darüber hinaus muss die Endpunktadresse des Geräts genau mit den HTTPS-XAddrs übereinstimmen.
- XAddrs müssen IP-Adressen oder Hostnamen sein, die über DNS auflösbar sind. In der Regel werden IP-Adressen verwendet.
- Mindestens eine IP-Adresse, die in den XAddrs enthalten ist (oder ip address resolved from a hostname included in the XAddrs), muss sich im gleichen Subnetz befinden wie der Adapter, über den die ProbeMatches- oder ResolveMatches-Nachricht empfangen wurde.
- Auf die Adresse und den Port, die im ersten XAddr angegeben sind, muss zugegriffen werden können. WSDAPI versucht, beim Herstellen einer HTTP-Verbindung eine Verbindung mit dieser Adresse herzustellen.