Gewusst wie: Aktivieren des WCF-Profildiensts
Aktualisiert: November 2007
In diesem Thema wird gezeigt, wie der ASP.NET-Profildienst auf einem Webserver konfiguriert wird, um ihn Clients, die Windows Communication Foundation (WCF) verwenden, zur Verfügung zu stellen. In diesem Thema wird auch gezeigt, wie die folgenden Aufgaben ausgeführt werden:
Definieren von Profileigenschaften
Verfügbarmachen von Profileigenschaften über den Profildienst
Hinweis: Greifen Sie auf den Profildienst über Secure Sockets Layer (SSL, unter Verwendung des HTTPS-Protokolls) zu, wenn in den Profileigenschaften vertrauliche Daten gespeichert sind. Weitere Informationen zur Einrichtung von SSL finden Sie auf der Microsoft-Website unter Configuring Secure Sockets Layer (IIS 6.0 Operations Guide) und Configuring Secure Sockets Layer in IIS 7.0.
So konfigurieren Sie den ASP.NET-Profildienst als WCF-Dienst
Wenn Sie noch keine ASP.NET-Webanwendung haben, erstellen Sie eine.
Fügen Sie der Website eine WCF-Dienstdatei (.svc) hinzu, die die folgende Direktive als Verweis auf die ProfileService-Klasse enthält:
[Visual Basic] <%@ ServiceHost Language="VB" Service="System.Web.ApplicationServices.ProfileService" Factory="System.Web.ApplicationServices.ApplicationServicesHostFactory" %> <%@ ServiceHost Language="C#" Service="System.Web.ApplicationServices.ProfileService" Factory="System.Web.ApplicationServices.ApplicationServicesHostFactory" %>
Speichern und schließen Sie die SVC-Datei.
Nehmen Sie die folgenden Konfigurationseinstellungen in der Datei Web.config vor, um den Dienst zu konfigurieren:
Definieren Sie den Endpunktevertrag im services-Element und das Verhalten des Diensts im behaviors-Element. Fügen Sie die bindingNamespace-Eigenschaft wie im folgenden Beispiel in den Endpunktevertrag ein, um einer Ausnahme in einigen Tools zur Proxygenerierung vorzubeugen. Weitere Informationen zu WCF-Endpunkten finden Sie unter Windows Communication Foundation Endpoints.
Konfigurieren Sie das serviceHostingEnvironment-Element für ASP.NET-Kompatibilität. Weitere Informationen zum Hosten von WCF-Diensten finden Sie unter WCF Services and ASP.NET.
Das folgende Beispiel zeigt das system.serviceModel-Element einer Web.config-Datei, die der obigen Liste entsprechend konfiguriert ist.
<system.serviceModel> <services> <service name="System.Web.ApplicationServices.ProfileService" behaviorConfiguration="MyServiceTypeBehaviors"> <endpoint contract= "System.Web.ApplicationServices.ProfileService" binding="basicHttpBinding" bindingNamespace="https://asp.net/ApplicationServices/v200"/> </service> </services> <serviceHostingEnvironment aspNetCompatibilityEnabled="true"/> <bindings> <basicHttpBinding allowCookies="true"> </bindings> </system.serviceModel>
So aktivieren Sie den Profildienst und machen Eigenschaften verfügbar
Wenn Sie für die Webanwendung noch keine Profileigenschaften definiert haben, definieren Sie sie in der Datei Web.config.
Das folgende Beispiel zeigt die Definition für zwei Profileigenschaften.
<system.web> <profile> <properties> <add name="Birthday" /> <add name="FavoriteColor" /> </properties> </profile> </system.web>
Weitere Informationen über das Definieren von Profileigenschaften finden Sie unter Definieren von ASP.NET-Profileigenschaften.
Aktivieren Sie den Profildienst in der Datei Web.config, und markieren Sie die Eigenschaften, die als schreibgeschützte oder als Eigenschaften mit Lese-/Schreibzugriff verfügbar sein sollen.
Das folgende Beispiel zeigt, wie der Profildienst aktiviert wird und die Zugriffsrechte für Profileigenschaften festgelegt werden.
<system.web.extensions> <scripting> <webServices> <profileService enabled="true" readAccessProperties="Birthday, FavoriteColor" writeAccessProperties="Birthday, FavoriteColor" > </webServices> </scripting> </system.web.extensions>
Sicherheit
Greifen Sie auf den Profildienst über Secure Sockets Layer (SSL, unter Verwendung des HTTPS-Protokolls) zu, wenn Sie in den Profileigenschaften vertrauliche Daten speichern. Stellen Sie außerdem sicher, dass die Daten sicher gespeichert werden. Weitere Informationen finden Sie unter Sichern von Profileigenschaften. Weitere Informationen zum Einrichten eines über SSL ausgeführten WCF-Diensts finden Sie unter Transport Security. Weitere Informationen zur Einrichtung von SSL finden Sie auf der Microsoft-Website unter Configuring Secure Sockets Layer (IIS 6.0 Operations Guide) und Configuring Secure Sockets Layer in IIS 7.0.
Siehe auch
Aufgaben
Exemplarische Vorgehensweise: Verwenden von ASP.NET-Anwendungsdiensten
Konzepte
Übersicht über den Windows Communication Foundation-Authentifizierungsdienst
Übersicht über den Windows Communication Foundation-Rollendienst