방법: 데이터 서비스에 액세스할 수 있도록 설정(WCF Data Services)
WCF Data Services 에서는 데이터 서비스에서 노출하는 리소스에 대한 액세스 권한을 명시적으로 부여해야 합니다. 즉, 새 데이터 서비스를 만든 후 엔터티 집합으로 개별 리소스에 대한 액세스 권한을 명시적으로 제공해야 합니다. 이 항목에서는 퀵 스타트를 완료할 때 만들어지는 Northwind 데이터 서비스의 엔터티 집합 중 5개 집합에 대한 읽기 및 쓰기 액세스 권한을 부여하는 방법을 보여 줍니다. EntitySetRights 열거형이 FlagsAttribute를 사용하여 정의되기 때문에 논리 OR 연산자를 사용하여 단일 엔터티 집합에 여러 사용 권한을 지정할 수 있습니다.
참고: |
---|
ASP.NET 응용 프로그램에 액세스할 수 있는 클라이언트는 데이터 서비스에 의해 노출되는 리소스에도 액세스할 수 있습니다.리소스에 무단으로 액세스할 수 없도록 하려면 프로덕션 데이터 서비스에서 응용 프로그램 자체에도 보안을 설정해야 합니다.자세한 내용은 Securing ASP.NET Web Sites을 참조하십시오. |
데이터 서비스에 액세스할 수 있도록 설정하려면
데이터 서비스 코드에서
InitializeService
함수의 자리 표시자 코드를 다음 코드로 바꿉니다.' Grant only the rights needed to support the client application. config.SetEntitySetAccessRule("Orders", EntitySetRights.AllRead _ Or EntitySetRights.WriteMerge _ Or EntitySetRights.WriteReplace) config.SetEntitySetAccessRule("Order_Details", EntitySetRights.AllRead _ Or EntitySetRights.AllWrite) config.SetEntitySetAccessRule("Customers", EntitySetRights.AllRead)
// Grant only the rights needed to support the client application. config.SetEntitySetAccessRule("Orders", EntitySetRights.AllRead | EntitySetRights.WriteMerge | EntitySetRights.WriteReplace ); config.SetEntitySetAccessRule("Order_Details", EntitySetRights.AllRead | EntitySetRights.AllWrite); config.SetEntitySetAccessRule("Customers", EntitySetRights.AllRead);
이렇게 하면 클라이언트가
Orders
및Order_Details
엔터티 집합에 대한 읽기 및 쓰기 액세스 권한과Customers
엔터티 집합에 대한 읽기 전용 액세스 권한을 가질 수 있습니다.
참고 항목
작업
방법: IIS에서 실행되는 WCF Data Services 개발