Aktivieren Ihrer Store in Windows Verbundsuche
Erläutert, wie Sie den Zugriff auf Ihren Datenspeicher durch einen OpenSearch-Webdienst ermöglichen und potenzielle Hindernisse dafür vermeiden.
Dieses Thema ist wie folgt organisiert:
- Bedingungen für die Annahme der Suchanforderung
- Senden von Abfragen und Zurückgeben von Suchergebnissen in RSS oder Atom
- Automatische Zuordnung zu Windows Shelleigenschaften
- Grundlegendes zum Windows-Karten von Elementen in Dateitypen
- Vermeiden potenzieller Barrieren für die Aktivierung eines Store
- Weitere Ressourcen
- Zugehörige Themen
Bedingungen für die Annahme der Suchanforderung
Der OpenSearch, den Sie auf Ihrem Webserver erstellen, muss die folgenden beiden Anforderungen erfüllen:
Sie können eine Abfrage
GET URLvom Client akzeptieren.Lassen Sie zu, dass die Suchbegriffe in die URL eingebettet werden.
Das folgende Beispiel zeigt, wie ein Suchbegriff in eine URL eingebettet werden kann.
https://example.com/search.aspx?query=terms¶m=mysearchword
Hinweis
Die Verbundsuche unterstützt nicht das Senden POST von Anforderungen an einen Webdienst.
Weitere Informationen zum Erstellen einer URL finden Sie unter "URL Template Parameters" in Creating an OpenSearch Description File in Windows Federated Search.
Unterstützte Abfragesyntax
Es wird keine bestimmte Abfragesyntax in Windows 7 erwartet. Der OpenSearch akzeptiert alle Begriffe, die der Benutzer im Eingabefeld im Windows Explorer einträgt, und codiert ihn in die URL. Dies wird gemäß der URL-Vorlage unter "URL Template Parameters" in Creating an OpenSearch Description File in Windows Federated Search beschrieben.
Benutzer erwarten, dass separate Begriffe implizit zusammen behandelt werden. Beispielsweise sollte eine Abfrage für "Microsoft Windows" nur Ergebnisse zurückgeben, die sowohl "Windows" als auch "Microsoft" enthalten.
Unterstützte Authentifizierungsprotokolle
Windows Die Verbundsuche unterstützt Windows-basierte Authentifizierung und kann Über die folgenden Protokolle Anmeldeinformationen für Webdienste bereitstellen:
- NTLM.
- Kerberos.
- Basic (nur über HTTPS).
- Andere Sicherheitssupportanbieter (Security Support Providers, SSPs), die auf Windows installiert sind, die zusätzliche Abfragekapazität bereitstellen. Informationen zum möglichen Zusatz anderer SSPs finden Sie in der Dokumentation zum SSP Interface SDK.
Senden von Abfragen und Zurückgeben von Suchergebnissen in RSS oder Atom
Der OpenSearch-Anbieter ist für die Zuordnung der XML-Elementwerte zu Windows Shell-Systemeigenschaften verantwortlich, die von Windows werden können. Sie sind jedoch nicht auf die Standardzuordnungen von RSS- oder Atom-Standardelementen beschränkt und können benutzerdefinierte XML-Elemente in den Windows-Namespace für jede der Eigenschaften enthalten. Beispielsweise können Sie eigene benutzerdefinierte XML-Elemente innerhalb des Elementelements hinzufügen, um zusätzliche Metadaten für Windows. Sie können auch Elemente aus anderen XML-Namespaces wie iTunes zuordnen.
Beispiel für eine RSS-Feedausgabe
Die folgende RSS-Feed-Beispielausgabe gibt ein Element zurück.
<rss version="2.0" xmlns:media="https://search.yahoo.com/mrss/" xmlns:example="https://example.com/namespace">
<channel>
<title>Search Results</title>
<item>
<title>An example result</title>
<link>https://example.com/pictures.aspx?id=01</link>
<description>This is a test of the emergency search results system. If this were a real emergency result, you'd be reading something more useful.</description>
<pubDate>Wed, 1 Oct 2008 23:12:00 GMT</pubDate>
<media:content url="https://example.com/pictures/picture01.jpg" fileSize="212889" type="image/jpeg" height="768" width="1024"/>
<media:thumbnail url="https://example.com/thumbnails/picture01.jpg" height="120" width="160"/>
<example:dateTaken>Mon, 22 Sep 2008 23:12:00 GMT</example:dateTaken>
</item>
</channel>
</rss>
Ausführlichere Informationen zur Eigenschaftenzuordnung finden Sie in den Abschnitten "Erweiterte Elemente in der WIndows-Verbundsuche" und "Benutzerdefinierte Eigenschaftenzuordnungen" unter Creating an OpenSearch Description File in Windows Federated Search.
Automatische Zuordnung zu Windows Shelleigenschaften
Innerhalb der Elemente im RSS-Feed können Sie auch andere XML-Elemente enthalten, die automatisch Windows Shell-Systemeigenschaften zuordnen. Fügen Sie dazu ein Element ein, das nach Windows Shell-Eigenschaft benannt ist und dem Windows Shell-Systemnamespace vorangestellt ist. Das folgende Beispiel veranschaulicht die Namespacedeklaration win=" http://schemas.microsoft.com/windows/2008/propertynamespace" und die Einbeziehung eines Elements für die Eigenschaftenzuordnung: win:System.Contact.PrimaryEmailAddress
<rss version="2.0" xmlns:example="https://example.com/schema/2009" xmlns:win="http://schemas.microsoft.com/windows/2008/propertynamespace">
...
<item>
<title>Someone</title>
<win:System.Contact.PrimaryEmailAddress>someone@example.com
</win:System.Contact.PrimaryEmailAddress>
</item>
Das hier verwendete Namespacepräfix ( "win" ) ist ein Vorschlag. Sie können ein beliebiges Präfix verwenden. Sie müssen jedoch die genauen Windows Shell-Eigenschaftennamen verwenden und den genauen Uniform Resource Identifier (URI) enthalten, wie im folgenden Beispiel gezeigt:
http://schemas.microsoft.com/windows/2008/propertynamespace
Informationen Windows Shell-Systemeigenschaften
Windows definiert eine vollständige Liste der Systemeigenschaften und das für jede Eigenschaft erforderliche Werttypformat. In der Dokumentation für die Eigenschaft System.FileExtension Window Shell wird beispielsweise angegeben, dass der Wert den führenden Punkt (".docx" und nicht "docx") enthalten muss.
Werte für Datum und Uhrzeit
Das bevorzugte Datums- und Uhrzeitformat ist ISO-8601, wie im folgenden Beispiel gezeigt:
2008-01-16T 19:20:30:.45+01:00
.NET-Entwickler sollten die DateTime-Klasse mit ToString("R") verwenden, um das richtige Format ausausgaben.
Ausführlichere Informationen zur Eigenschaftenzuordnung finden Sie unter "Erweiterte Elemente in Windows-Verbundsuche" unter Erstellen einer OpenSearch-Beschreibungsdatei in Windows-Verbundsuche.
Grundlegendes zum Windows-Karten von Elementen in Dateitypen
Die Suche in der Windows Explorer-Benutzeroberfläche ermöglicht Es Benutzern, Ergebnisse als Dateien zu behandeln, wenn ein RSS-Element auf eine remote gespeicherte Datei verweist. Der Benutzer kann Elemente per Drag & Drop auf den Desktop ziehen, und die benutzeroberfläche Windows Explorer zeigt das richtige Symbol an und stellt das entsprechende Kontextmenü zur Verfügung. Wenn das RSS-Element nicht auf eine remote gespeicherte Datei verweisen soll, wird die Datei als Link behandelt, und Benutzer können Aktionen für sie ausführen, z. B. das Erstellen einer Verknüpfung oder das Öffnen im Browser.
Das folgende Flussdiagramm zeigt, Windows den Dateityp eines Elements bestimmt.

Der OpenSearch führt die folgenden Schritte aus, um einem Dateityp ein Element zu zuordnen:
- Bestimmen Sie, ob das Element als Datei oder Weblink behandelt werden soll.
- Identifizieren Sie die richtige zu verwendende Dateierweiterung.
Wenn das Element beispielsweise über eine Link-URL verfügt, die einen Dateisystempfad verwendet (z.B. ), behandelt der OpenSearch-Anbieter den Link als Datei und bestimmt den Typ anhand der im Pfad verwendeten Dateierweiterung (in diesem Beispiel file:///\\server\share\etc\item.ext .ext).
Wenn das Element das standardmäßige RSS-Gehäuse oder mediaRSS media:content-Element verwendet, geht der OpenSearch-Anbieter davon aus, dass es sich bei dem Element um eine Datei handelt, und identifiziert die Dateierweiterung wie folgt:
- Wenn die System.FileExtension Windows Shell-Eigenschaft für das Element zugeordnet wurde, verwendet der Anbieter diese Dateierweiterung.
- Wenn die Eigenschaft System.FileExtension Windows Shell nicht zugeordnet wurde, verwendet der Anbieter das Type-Attribut, das im Gehäuse oder Inhaltselement angegeben ist. Dieses Element sollte eine Zeichenfolge
MIMETypeenthalten, z."image/jpeg"B. . Wenn der einer dateinamenerweiterung zugeordnet ist, die auf dem Clientcomputer registriert ist, wird das Element als DateiMIMETypedieses Typs betrachtet. Wenn nicht einer auf dem Clientcomputer registrierten Dateierweiterung zugeordnet ist, wird das ElementMIMETypeals Weblinktyp behandelt. Der OpenSearch versucht nicht, das Url-Attribut zu analysieren, um die Dateierweiterung zu finden. - Wenn der einer dateinamenerweiterung zugeordnet ist, die auf dem Clientcomputer registriert ist, bestimmt der Anbieter, ob die Dateierweiterung ein bekannter Webdateityp
MIMETypeist (.htm, .html, .asp, .aspx, .php, .swf, .stm). Wenn ja, wird der Dateityp als Weblinktyp betrachtet. Andernfalls wird sie als Dateityp betrachtet. Wenn beispielsweise der dateinamenerweiterung .htm zugeordnet ist, wird dieses Element als Weblink und nicht als .htmMIMEType "text/html"betrachtet.
Vermeiden potenzieller Barrieren für die Aktivierung eines Store
Einige Datenspeicher stellen keinen mit OpenSearch kompatiblenWebdienst zur Verfügung, können aber trotzdem mit Windows Verbundensuche verbunden werden. Zu diesen Datenspeichern gehören:
Remoteindizes mit Authentifizierungsmethoden, die in der Windows 7-Verbundsuche nicht unterstützt werden.
Beispiele hierfür sind formularbasierte Authentifizierung und andere benutzerdefinierte Authentifizierungsmethoden.
Wenn ein öffentlicher Speicher von hohem Wert öffentliche Web-APIs hat, kann jeder einen anderen Webdienst schreiben, der OpenSearch kompatibelist und diese APIs im Hintergrund aufruft.
Beispiele hierfür sind die Library of Library und medizinische Forschungsdatenbanken.
Proprietäre Unternehmensdatenspeicher oder -indizes sowie Legacy-Inhaltsverwaltungsspeicher, für die es möglicherweise unmöglich ist, ein Front-End zu implementieren.
Es gibt jedoch Alternativen, die Hindernisse für die Aktivierung eines Datenspeichers vermeiden können. Im Folgenden finden Sie einige dieser Alternativen:
So schreiben Sie einen Middle-Man-Webdienst, wenn Sie den Webdienst für die vorhandene Datenquelle nicht ändern können oder der Webdienst eine benutzerdefinierte API bietet:
- Schreiben Sie einen Middle-Man-Webdienst, der eine Windows 7-Abfrage akzeptieren kann.
- Verbinden die Datenquelle an, und rufen Sie die Abfrageergebnisse ab.
- Formatieren Sie die Ergebnisse neu im RSS- oder Atom-Format.
- Gibt die Ergebnisse an den Windows 7-Client zurück.
- Beachten Sie, dass Sie für Unternehmensdatendienste und viele Internetdatendienste möglicherweise die Benutzeranmeldeinformationen im Auftrag des Webdiensts übergeben müssen, um eine Ergebnisschneidung basierend auf den Berechtigungen des Benutzers durchzuführen.
So verwenden Sie eine vorhandene Suchmaschine, wenn Sie keinen öffentlichen Datenspeicher aktivieren können:
Verwenden Sie eine öffentliche Suchmaschine, die bereits OpenSearch RSS unterstützt. Dazu können Sie Ihren Benutzern eine OSDX-Datei bereitstellen, die über eine URL-Vorlage verfügt, die die Ergebnisse auf die ergebnisse für Ihre spezifische Domäne beschränkt.
Im folgenden Beispiel finden Sie eine OpenSearch, in der nur der Hilfeinhalt nach Windows mithilfe einer Abfrage für live.com.
<?xml version="1.0" encoding="UTF-8"?> <OpenSearchDescription xmlns="https://a9.com/-/spec/opensearch/1.1/"> <ShortName>Windows Help</ShortName> <Description>Search Windows Help using the live.com search engine</Description> <Language></Language> <Url type="text/html" template="https://windowshelp.microsoft.com/windows/search.aspx?=&qu={searchTerms}"/> <Url type="application/rss+xml" template="https://api.search.live.com/rss.aspx?source=web&query={searchTerms} site:windowshelp.microsoft.com&web.count=50"/> </OpenSearchDescription>
So verwenden Sie einen vorhandenen Indizierungsserver, der OpenSearch, wenn Sie keine proprietären Unternehmensdatenspeicher oder -indizes aktivieren können:
- Wählen Sie einen vorhandenen Indizierungsserver aus, OpenSearch, um Ihre Inhalte zu indizieren, z. B. SharePoint Suchserver.
- Erstellen Sie eine OSDX-Datei, die die Ergebnisse des SharePoint-Indexes mithilfe ihrer KeyWord-Syntax in der URL-Vorlage auf die Ergebnisse ihres Servers beschränkt.
So schreiben Sie einen clientseitigen Datenspeicher, wenn eine serverseitige Lösung nicht funktioniert:
- Schreiben Sie eine clientseitige OpenSearch Datenquelle, die sich zwischen dem Windows OpenSearch-Anbieter und der externen Datenquelle befindet.
- Verwenden Sie die IOpenSearchSource-Schnittstellen-API im Windows SDK, um eine entsprechend konfigurierte SEARCHCONNECTOR-MS-Datei zu erstellen, über die Windows Explorer Ihre Implementierung mit den Abfrageparametern aufrufen kann. Ihre Implementierung kann dann Ergebnisse im RSS- oder Atom-Format zurückgeben. Auf diese Weise kann Ihre Implementierung eine benutzerdefinierte Authentifizierungsbenutzeroberfläche bereitstellen und mithilfe der proprietären API eine Verbindung mit der Datenquelle herstellen.
Hinweis
Beim Öffnen einer OSDX-Datei wird eine SEARCHCONNECTOR-MS-Datei (Suchconnector) im Verzeichnis %userprofile%/searches erstellt und ein Link dazu im Verzeichnis %userprofile%/links platziert.
Weitere Ressourcen
Weitere Informationen zum Implementieren des Suchverbunds mit Remotedatenspeichern mithilfe von OpenSearch Technologien in Windows 7 und höher finden Sie unter "Zusätzliche Ressourcen" bei der Verbundsuche in Windows.