방법: WCF 프로필 서비스 활성화

업데이트: 2007년 11월

이 항목에서는 웹 서버에서 ASP.NET 프로필 서비스를 구성하여 WCF(Windows Communication Framework)를 사용하는 클라이언트에서 사용할 수 있게 하는 방법을 보여 줍니다. 또한 이 항목에서는 다음 작업을 수행하는 방법을 보여 줍니다.

  • 프로필 속성 정의

  • 프로필 서비스를 통해 프로필 속성을 사용할 수 있도록 만들기

    참고:

    프로필 속성에 중요한 데이터가 저장되어 있는 경우 HTTPS 프로토콜을 사용하여 SSL(Secure Sockets Layer)을 통해 프로필 서비스에 액세스합니다. SSL을 설정하는 방법에 대한 자세한 내용은 Microsoft 웹 사이트에서 Configuring Secure Sockets Layer (IIS 6.0 Operations Guide)Configuring Secure Sockets Layer in IIS 7.0을 참조하십시오.

ASP.NET 프로필 서비스를 WCF 서비스로 구성하려면

  1. ASP.NET 웹 응용 프로그램이 아직 없는 경우에는 새로 만듭니다.

  2. ProfileService 클래스를 참조하는 다음 지시문이 있는 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" %>
    
  3. .svc 파일을 저장한 다음 닫습니다.

  4. Web.config 파일에서 다음과 같이 설정을 구성하여 서비스를 구성합니다.

    • services 요소에서 끝점 계약을 정의하고 behaviors 요소에서 서비스 동작을 정의합니다. 일부 프록시 생성 도구에서 예외가 발생하지 않도록 다음 예제에서 나타난 대로 끝점 계약에 bindingNamespace 속성을 포함합니다. WCF 끝점에 대한 자세한 내용은 Windows Communication Foundation Endpoints를 참조하십시오.

    • ASP.NET 호환성을 위해 serviceHostingEnvironment 요소를 구성합니다. WCF 서비스 호스팅에 대한 자세한 내용은 WCF Services and 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>
    

프로필 서비스를 활성화하고 속성을 노출하려면

  1. 웹 응용 프로그램에 대한 프로필 속성을 정의하지 않은 경우에는 Web.config 파일에서 해당 속성을 정의합니다.

    다음 예제에서는 두 프로필 속성에 대한 정의를 보여 줍니다.

    <system.web>
      <profile> 
        <properties>
          <add name="Birthday" /> 
          <add name="FavoriteColor" />
        </properties> 
      </profile>
    </system.web>
    

    프로필 속성 정의에 대한 자세한 내용은 ASP.NET 프로필 속성 정의를 참조하십시오.

  2. Web.config 파일에서 프로필 서비스를 활성화하고 읽기 전용 속성 또는 읽기/쓰기 속성으로 사용할 수 있는 속성을 표시합니다.

    다음 예제에서는 프로필 서비스를 활성화하고 프로필 속성에 대한 액세스 가능성을 설정하는 방법을 보여 줍니다.

    <system.web.extensions>
      <scripting>
        <webServices>
          <profileService enabled="true"
            readAccessProperties="Birthday, FavoriteColor"
            writeAccessProperties="Birthday, FavoriteColor" >
        </webServices>
      </scripting>
    </system.web.extensions>
    

보안

프로필 속성에 중요한 데이터가 저장되어 있는 경우 SSL(Secure Sockets Layer)을 통해 프로필 서비스에 액세스합니다. 또한 데이터가 안전하게 저장되어 있는지 확인합니다. 자세한 내용은 프로필 속성 보안을 참조하십시오. SSL을 통해 실행하도록 WCF 서비스를 설정하는 방법에 대한 자세한 내용은 Transport Security를 참조하십시오. SSL을 설정하는 방법에 대한 자세한 내용은 Microsoft 웹 사이트에서 Configuring Secure Sockets Layer (IIS 6.0 Operations Guide)Configuring Secure Sockets Layer in IIS 7.0을 참조하십시오.

참고 항목

작업

연습: ASP.NET 응용 프로그램 서비스 사용

개념

Windows Communication Foundation 인증 서비스 개요

Windows Communication Foundation 역할 서비스 개요

기타 리소스

Configuring Services