Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Im HTTPSSO-Beispiel wird die Verwendung des SSO-Features (Enterprise Single Sign-On) mit dem HTTP-Adapter von Microsoft BizTalk Server veranschaulicht.
Hinweis
Dieses Beispiel wird auf 64-Bit-Betriebssystemen nicht unterstützt.
Funktionsweise dieses Beispiels
In diesem Beispiel wird ein End-to-End-Szenario veranschaulicht, das SSO und die BizTalk HTTP Send and Receive-Adapter verwendet, um zu simulieren, wie SSO es einem Benutzer ermöglicht, zusätzliche Anmeldeinformationen für die Anmeldung bei Nicht-Microsoft Windows-Systemen nach der Authentifizierung von Windows zu vermeiden.
Im Beispiel werden auch die Verwaltungs- und Zuordnungsmodule von SSO verwendet, um Partneranwendungs- und SSO-Zuordnungen mithilfe der Interop-Client-DLL von SSO zu erstellen.
Im Beispiel wird die Verwendung von SSO veranschaulicht, indem die folgenden Aspekte eines End-to-End-Szenarios implementiert werden:
Die Benutzeroberfläche, dargestellt durch ein virtuelles IIS-Verzeichnis (Microsoft Internet Information Services), das für die Verwendung der integrierten Windows-Authentifizierung konfiguriert ist.
Back-End-System, dargestellt durch ein virtuelles IIS-Verzeichnis, das für die Verwendung der Standardauthentifizierung konfiguriert ist.
Back-End-Datenbank, dargestellt durch die SQL-Beispieldatenbank Northwind.
In diesem Beispiel wird davon ausgegangen, dass Sie BizTalk Server und SSO installiert haben. Sie müssen über Administratorrechte für BizTalk Server, IIS, SSO und COM+ unter Windows XP Professional verfügen. Sie müssen auch Mitglied von SSO-Administratoren, BizTalk Server-Administratoren und BizTalk Isolated Host Users Windows-Gruppen sein.
Bei der effektiven Verwendung dieses Beispiels wird davon ausgegangen, dass Sie über ausreichende Kenntnisse des SSO und des BizTalk-HTTP-Adapters verfügen. Beispielsweise sollten Sie wissen, was eine Partneranwendung im Kontext von SSO ist. Informationen zu diesen Themen finden Sie unter Verwenden von SSO. Siehe auch HTTP-Adapter.
Nachdem Sie die Konfiguration abgeschlossen haben, funktioniert dieses Beispiel wie folgt:
Wenn Sie in der Assistentenanwendung auf "Fertig stellen" klicken, die die Benutzeroberfläche für dieses Beispiel umfasst, wird eine Instanz von Internet Explorer gestartet und übergibt die URL der BizTalk HTTP Receive DLL.
BizTalk Server leitet mit Hilfe von SSO die HTTP-Anforderung effektiv an die Datei EmployeeData.aspx in einem virtuellen IIS-Verzeichnis weiter, das mit der Standardauthentifizierung konfiguriert wurde. Diese ASPX-Datei simuliert den Einstiegspunkt in ein Nicht-Windows-Back-End-System. Da Sie SSO verwenden, enthält die HTTP-Anforderung die konfigurierten Anmeldeinformationen, die ein Anmeldekonto für das simulierte Back-End-System simulieren.
Die ASPX-Datei greift auf eine geänderte Version der SQL-Beispieldatenbank Northwind zu, um Mitarbeiterdaten abzurufen, die den simulierten Back-End-Systemanmeldeinformationen entsprechen.
Die ASPX-Datei gibt die abgerufenen Mitarbeiterdaten in einer HTTP-Antwort zurück.
BizTalk Server leitet die HTTP-Antwort an Internet Explorer weiter, wodurch die zurückgegebenen Mitarbeiterdaten an den Benutzer angezeigt werden.
Wenn Sie BizTalk Server und SSO umgehen und direkt zur Datei EmployeeData.aspx navigieren, werden Sie in einem Windows-Dialogfeld aufgefordert, Ihre Anmeldeinformationen einzugeben.
Ein Beispiel, das zeigt, wie Sie das Befehlszeilenprogramm ssomanage.exe zum Konfigurieren von SSO verwenden, z. B. das Erstellen von Partneranwendungen und Benutzerzuordnungen, finden Sie unter Verwalten (BizTalk Server-Beispiel).
Wo finde ich dieses Beispiel?
< Beispielpfad>\SSO\HTTPSSO\
Die folgende Tabelle zeigt die Dateien in diesem Beispiel und beschreibt deren Zweck.
| Datei(n) | Beschreibung |
|---|---|
| AssemblyInfo.cs, SsoSample.csproj | Projekt und zugehörige Dateien für dieses HTTP-SSO-Beispiel. |
| SsoSample.cs | Die Microsoft Visual C#-Quelldatei der obersten Ebene für die grafische HTTP-SSO-Anwendung, die einen Großteil dieses Beispiels darstellt. Diese Datei enthält den SSO-Konfigurationscode in einer Klasse mit dem Namen SsoConfigurator , die letztendlich der Punkt dieses Beispiels ist. |
| Im Ordner \Scripts: EmployeeData.aspx | Wird verwendet, um auf die Back-End-Datenbank (in diesem Fall die SQL Northwind-Datenbank) zuzugreifen und abzufragen, wenn ein Mitarbeiter eine Anforderung zum Anzeigen personenbezogener Daten initiiert, entweder direkt oder mithilfe von SSO. |
| In dem Ordner: \Scripts\ValidateUser.aspx | Einfacher Test, um einen Benutzer zu überprüfen und zu melden, ob dieser Benutzer entweder direkt oder mithilfe von SSO überprüft wurde. |
| Im Ordner \UI: AddApplication.cs, AddApplication.resx, AddMapping.cs, AddMapping.resx, App.ico, BtsPage.cs, BtsPage.resx, ExecutePage.cs, ExecutePage.resx, FinishPage.cs, FinishPage.resx, IisPage.cs, IisPage.resx, InfoPage.cs, InfoPage.resx, PageBase.cs, PageBase.resx, SsoPage.cs, SsoPage.resx, SsoSampleWizard.cs, SsoSampleWizard.resx, WelcomePage.cs, WelcomePage.resx, WorkPage.cs, WorkPage.resx | Zusätzliche Visual C#-Quelldateien und die zugehörigen XML-formatierten Ressourcendateien für die grafische HTTP-SSO-Anwendung, die einen Großteil dieses Beispiels darstellt. |
Erstellen und Initialisieren dieses Beispiels
So erstellen und initialisieren Sie das HTTPSSO-Beispiel
Erstellen Sie ein lokales Windows-Konto, das Microsoft Internetinformationsdienste (IIS) für die einfache Authentifizierung verwenden kann. SSO ordnet das Windows-Domänenkonto diesem lokalen Windows-Konto zu. Verwenden Sie beispielsweise Ihren Nachnamen, um ein lokales Windows-Konto zu erstellen.
Hinweis
Wenn Sie auf einem Domänencontroller arbeiten, können Sie Domänenkonten erstellen und Ihr aktuell angemeldetes Domänenkonto diesem Konto zuordnen.
Öffnen Sie mithilfe von Microsoft SQL Server Enterprise Manager die Tabelle "Employees" in der Northwind-Beispieldatenbank, und fügen Sie dann eine Zeile hinzu, die dem soeben erstellten lokalen Windows-Konto entspricht, einschließlich Beispieldaten für die verschiedenen Spalten. Der Wert, den Sie der Spalte "Nachname" in der Tabelle "Mitarbeiter" hinzufügen, muss mit dem Benutzernamen des lokalen Windows-Kontos übereinstimmen, das Sie in Schritt 1 hinzugefügt haben.
Stellen Sie sicher, dass das ASP.NET-Konto (ASPNET) Über Leseberechtigungen für die Northwind-Datenbank verfügt.
Öffnen Sie die Projektdatei SsoSample.csproj mit Visual Studio.
Klicken Sie im Menü "Erstellen" auf "Lösung erstellen".
Hinweis
Möglicherweise werden Sie aufgefordert, eine Lösungsdatei zu speichern, bevor der Build fortgesetzt werden kann.
Wenn Sie die folgenden BizTalk-Assemblyverweise für das Projekt nicht finden können, löschen Sie sie, fügen Sie sie aus den angegebenen Speicherorten erneut hinzu, und erstellen Sie es erneut:
Microsoft.BizTalk.ExplorerOM. Standardmäßig befindet sich die Microsoft.BizTalk.ExplorerOM.dll-Datei im Ordner \Programme (x86)\Microsoft BizTalk Server <VERSION>Developer Tools\.
Microsoft.BizTalk.SSOClient.Interop. Standardmäßig befindet sich die Microsoft.BizTalk.Interop.SSOClient.dll Datei im Ordner <"ProgramFiles>\Common Files\Enterprise Single Sign-On\".
Dadurch wird die ausführbare Datei SsoSample.exe im folgenden Ordner erzeugt:
< Beispielpfad>\SSO\HTTPSSO\bin\Debug\
Dieses Beispiel ausführen
Hinweis
Wenn Sie dieses Beispiel unter IIS 6.0 im Arbeitsprozessisolationsmodus ausführen, werden Anwendungspools für beide virtuellen Verzeichnisse erstellt. Sie müssen die Identität für diese beiden Anwendungspools manuell in Ihrem Windows-Konto konfigurieren (Sie können die Identität im Internetinformationsdienste-Manager konfigurieren).
So führen Sie das HTTPSSO-Beispiel aus
Führen Sie die ausführbare Datei SsoSample.exeaus, die sich im folgenden Ordner befindet:
< Beispielpfad>\SSO\HTTPSSO\bin\Debug\
Die Assistentenanwendung für dieses Beispiel wird geöffnet.
Übernehmen Sie auf der Willkommensseite die Standardeinstellung für die Konfiguration von IIS, SSO und BizTalk, und klicken Sie dann auf Weiter.
Übernehmen Sie auf der Seite "IIS-Konfiguration" die Standardeinstellungen für die beiden virtuellen IIS-Verzeichnisse, die Sie erstellen möchten, und klicken Sie dann auf "Weiter".
Übernehmen Sie auf der Seite "SSO-Konfiguration" die Standardeinstellungen für die Partneranwendung, auf die über die Schaltfläche " Anwendung hinzufügen " zugegriffen werden kann.
Übernehmen Sie auf der Seite "SSO-Konfiguration" die meisten Standardeinstellungen für die Benutzerzuordnungen, auf die über die Schaltfläche "Zuordnung hinzufügen" zugegriffen werden kann. Geben Sie Werte für die folgenden beiden Einstellungen basierend auf dem lokalen Windows-Konto an, das Sie beim Erstellen und Initialisieren dieses Beispiels hinzugefügt haben.
Setting Wert Externer Benutzername Legen Sie den Namen des hinzugefügten lokalen Windows-Benutzerkontos fest. Kennwort für externe Benutzer Legen Sie das Kennwort für das hinzugefügte lokale Windows-Benutzerkonto fest. Klicken Sie auf der Seite "SSO-Konfiguration " auf "Weiter".
Übernehmen Sie auf der Seite "BizTalk-Konfiguration" die Standardeinstellungen für die Sende- und Empfangsports usw. und klicken Sie dann auf "Weiter".
Hinweis
Sie können die Standardeinstellung für den Sendeport von EmployeeData.aspx in ValidateUser.aspx ändern, wenn Sie eine einfache Benutzerüberprüfung anstelle von Beispieldaten anzeigen möchten, die aus der Tabelle "Mitarbeiter" der SQL-Datenbank "Northwinds" abgerufen wurden. Wenn Sie diese Änderung vornehmen, wird die Art der im Browser angezeigten Ausgabe geändert, nachdem Sie in Schritt 9 auf "Fertig stellen" geklickt haben.
Überprüfen Sie die Statusmeldungen, die der ausgeführten IIS-, SSO- und BizTalk-Konfiguration entsprechen. Sie finden den Code, der während dieser Phase ausgeführt wird, in den Klassen IisConfigurator, SsoConfigurator und BtsConfigurator , die in der Datei SsoSample.cs definiert sind. Klicken Sie nach Abschluss der Konfiguration auf "Weiter".
Übernehmen Sie auf der letzten Seite der Assistentenanwendung die Standardeinstellungen für den Startbrowser unter (ein ausgewähltes Kontrollkästchen und ein Textfeld mit der URL
http://localhost/SsoSampleBizTalkHttpReceive/BTSHttpReceive.dll?<message/>), und klicken Sie dann auf "Fertig stellen".Eine Instanz von Internet Explorer wird geöffnet und zeigt bald die Beispielmitarbeiterdaten an, die Sie der Tabelle "Mitarbeiter" der SQL-Datenbank "Northwinds" hinzugefügt haben.
Für Vergleichszwecke können Sie BizTalk und SSO umgehen und direkt zu einer der ASPX-Dateien navigieren:
http://localhost/SsoSampleServerApplication/ValidateUser.aspxhttp://localhost/SsoSampleServerApplication/EmployeeData.aspx
Da Sie BizTalk und SSO umgehen, werden Sie in beiden Fällen von IIS zur Eingabe Ihrer Authentifizierungsinformationen aufgefordert (verwenden Sie die zuvor erstellten lokalen Windows-Kontoinformationen).
Kommentare
Die SsoSample.exe-Assistentanwendung konfiguriert zwei virtuelle IIS-Verzeichnisse:
Das erste virtuelle Verzeichnis ist mit der integrierten Windows-Authentifizierung konfiguriert und entspricht der BizTalk HTTP Receive ISAPI-Erweiterung. Die .dll-Datei BTSHTTPReceive.dll muss mit der .dll-Datei verbunden sein, die sich im folgenden Ordner befindet:
< Installationspfad>\HttpReceive
Das zweite virtuelle Verzeichnis ist mit der Standardauthentifizierung konfiguriert und simuliert ein Back-End-System, das eine Benutzer-ID und ein Kennwort zur Authentifizierung des Benutzers akzeptiert. Sie muss einem oder dem anderen der ASPX-Dateien, ValidateUser.aspx oder EmployeeData.aspx zugeordnet sein, die sich im folgenden Ordner befinden:
< Beispielpfad>\SSO\HTTPSSO\Scripts
Sie können die SsoSample.exe-Assistentenanwendung verwenden, um eine oder mehrere Partneranwendungen zu konfigurieren. Für jede dieser Partneranwendungen können Sie eine oder mehrere Benutzerzuordnungen erstellen. Jede dieser Benutzerzuordnungen ordnet ein Windows-Benutzerkonto einem Konto zu, das Sie für den Zugriff auf ein bestimmtes Back-End-System verwenden. In diesem Beispiel handelt es sich bei diesem Konto um ein lokales Windows-Konto, das Sie zum Authentifizieren mit dem zweiten virtuellen IIS-Verzeichnis verwenden, das ein echtes Back-End-System simuliert.
Um dieses Beispiel erneut ausführen zu können, haben Sie mehrere Möglichkeiten:
Navigieren Sie direkt zu der folgenden URL in Internet Explorer:
http://localhost/SsoSampleBizTalkHttpReceive/BTSHttpReceive.dll?<message/>Führen Sie die Assistentenanwendung erneut aus, deaktivieren Sie jedoch alle Konfigurationskontrollkästchen auf der ersten Seite.
Führen Sie die Assistentenanwendung erneut aus, lassen Sie die Konfigurationskontrollkästchen auf der ersten Seite aktiviert, konfigurieren sie jedoch sorgfältig und entsprechend zusätzliche BizTalk-Elemente, Partneranwendungen usw., sodass keine Konfigurationsfehler auftreten.
Verwenden Sie zum Bereinigen aus diesem Beispiel das folgende Verfahren.
Umgehend nach dieser Probe aufräumen
Kehren Sie gegebenenfalls die von Ihnen ausgeführte manuelle Konfiguration um, z. B. das Entfernen des lokalen Windows-Kontos.
Entfernen Sie IIS-Anwendungen, die den virtuellen Verzeichnissen entsprechen, und löschen Sie dann die von diesem Beispiel erstellten virtuellen IIS-Verzeichnisse.
Verwenden Sie die BizTalk-Verwaltungskonsole, um den Sendeport, der diesem Beispiel zugeordnet ist, zu dekommissionieren und dann zu löschen. Löschen Sie dann den Empfangsport (und seinen Empfangsort), der im Zusammenhang mit diesem Beispiel steht.
Verwenden Sie die Ssomanage-Anwendung (in \Programme\Common Files\Enterprise Single Sign-On\), um die SSO-Anwendung für dieses Beispiel zu löschen:
Ssomanage –deleteapp SsoSampleApplication