Compartir a través de


Cómo: Habilitar el acceso al servicio de datos (WCF Data Services)

En WCF Data Services , debe permitir explícitamente el acceso a los recursos expuestos por un servicio de datos. Esto significa que después de crear un nuevo servicio de datos, debe proporcionar explícitamente acceso a los recursos individuales como conjuntos de entidades. En este tema se muestra cómo permitir el acceso de lectura y escritura a cinco conjuntos de entidades del servicio de datos de Northwind que se crea al completar el tutorial rápido. Dado que la enumeración EntitySetRights se define utilizando FlagsAttribute, puede utilizar un operador OR lógico para especificar varios permisos para un único conjunto de entidades.

Dd728277.note(es-es,VS.100).gifNota:
Cualquier cliente que pueda tener acceso a la aplicación ASP.NET también puede tener acceso a los recursos expuestos por el servicio de datos.En un servicio de datos de producción, para evitar el acceso no autorizado a los recursos, también debería proteger la aplicación.Para obtener más información, vea Securing ASP.NET Web Sites.

Para habilitar el acceso al servicio de datos

  • En el código del servicio de datos, reemplace el código de marcador de posición de la función InitializeService por el siguiente:

    ' 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);
    

    De esta forma, los clientes pueden tener acceso de lectura y escritura a los conjuntos de entidades de Orders y Order_Details, y acceso de solo lectura a los conjuntos de entidades de Customers.

Vea también

Tareas

Cómo: Desarrollar un servicio de datos WCF que se ejecuta en IIS

Conceptos

Configurar el servicio de datos (WCF Data Services)