方法 : WCF プロファイル サービスを有効にする
更新 : 2007 年 11 月
ここでは、WCF (Windows Communication Foundation) を使用するクライアントが利用できるように Web サーバー上で ASP.NET プロファイル サービスを構成する方法について説明します。次のタスクを実行する方法についても説明します。
プロファイル プロパティを定義します。
プロファイル サービスでプロファイル プロパティを使用できるようにします。
メモ : プロファイル プロパティに重要情報が格納されている場合は、HTTPS プロトコルを使用して SSL (Secure Sockets Layer) 経由でプロファイル サービスにアクセスします。SSL を設定する方法の詳細については、Microsoft Web サイトの「SSL (Secure Sockets Layer) を構成する (IIS 6.0 操作ガイド)」および「Configuring Secure Sockets Layer in IIS 7.0」を参照してください。
ASP.NET プロファイル サービスを WCF サービスとして構成するには
ASP.NET Web アプリケーションがない場合は、それを作成します。
ProfileService クラスを参照するために、次のディレクティブを含む Web サイトに WCF サービス ファイル (.svc) を追加します。
[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" %>
.svc ファイルを保存して閉じます。
Web.config ファイルで次の構成設定を行って、サービスを構成します。
services 要素でエンドポイント コントラクトを定義し、behaviors 要素でサービス動作を定義します。プロキシ生成ツールで例外を発生させないために、次の例に示すように、エンドポイント コントラクトに bindingNamespace プロパティを含めます。WCF エンドポイントの詳細については、「Windows Communication Foundation エンドポイント」を参照してください。
ASP.NET との互換性のために、serviceHostingEnvironment 要素を構成します。WCF サービスをホストする方法については、「WCF サービスと ASP.NET」を参照してください。
前の一覧で説明した構成設定を示す Web.config ファイルの system.serviceModel 要素の例を次に示します。
<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>
プロファイル サービスを有効にしてプロパティを公開するには
Web アプリケーションのプロファイル プロパティをまだ定義していない場合は、Web.config ファイルで定義します。
2 つのプロファイル プロパティの定義を次の例に示します。
<system.web> <profile> <properties> <add name="Birthday" /> <add name="FavoriteColor" /> </properties> </profile> </system.web>
プロファイル プロパティの定義の詳細については、「ASP.NET プロファイル プロパティの定義」を参照してください。
Web.config ファイルで、プロファイル サービスを有効にし、使用可能なプロパティを読み取り専用プロパティまたは読み取り/書き込みプロパティとしてマークします。
プロファイル サービスを有効にし、プロファイル プロパティのアクセシビリティを設定する方法の例を次に示します。
<system.web.extensions> <scripting> <webServices> <profileService enabled="true" readAccessProperties="Birthday, FavoriteColor" writeAccessProperties="Birthday, FavoriteColor" > </webServices> </scripting> </system.web.extensions>
セキュリティ
プロファイル プロパティに重要情報を保存した場合は、HTTPS プロトコルを使用して SSL 経由でプロファイル サービスにアクセスします。また、データが安全に保存されていることも確認します。詳細については、「プロファイル プロパティの保護」を参照してください。SSL 経由で実行するように WCF サービスを設定する方法の詳細については、「トランスポート セキュリティ」を参照してください。SSL を設定する方法の詳細については、Microsoft Web サイトの「SSL (Secure Sockets Layer) を構成する (IIS 6.0 操作ガイド)」および「Configuring Secure Sockets Layer in IIS 7.0」を参照してください。
参照
処理手順
チュートリアル : ASP.NET アプリケーション サービスの使用
概念
Windows Communication Foundation の認証サービスの概要
Windows Communication Foundation のロール サービスの概要