Procedura: abilitare l'accesso al servizio dati (WCF Data Services)How to: Enable Access to the Data Service (WCF Data Services)

In WCF Data ServicesWCF Data Services è necessario concedere in modo esplicito l'accesso alle risorse esposte da un servizio dati.In WCF Data ServicesWCF Data Services, you must explicitly grant access to the resources that are exposed by a data service. In altre parole, dopo aver creato un nuovo servizio dati, è necessario fornire in modo esplicito l'accesso alle singole risorse come set di entità.This means that after you create a new data service, you must still explicitly provide access to individual resources as entity sets. In questo argomento viene illustrato come abilitare la lettura e accesso in scrittura a cinque dell'entità imposta nel servizio dati Northwind creato al termine di delle Guide rapide.This topic shows how to enable read and write access to five of the entity sets in the Northwind data service that is created when you complete the quickstart. Poiché l'enumerazione EntitySetRights viene definita tramite FlagsAttribute, è possibile utilizzare un operatore logico OR per specificare più autorizzazioni per un solo set di entità.Because the EntitySetRights enumeration is defined by using the FlagsAttribute, you can use a logical OR operator to specify multiple permissions for a single entity set.

Nota

I client che possono accedere all'applicazione ASP.NET saranno inoltre in grado di accedere alle risorse esposte dal servizio dati.Any client that can access the ASP.NET application can also access the resources exposed by the data service. Per impedire l'accesso non autorizzato alle risorse in un servizio dati di produzione, è inoltre necessario proteggere l'applicazione stessa.In a production data service, to prevent unauthorized access to resources, you should also secure the application itself. Per ulteriori informazioni, vedere NIB: sicurezza ASP.NET.For more information, see NIB: ASP.NET Security.

Per abilitare l'accesso al servizio datiTo enable access to the data service

  • Nel codice per il servizio dati sostituire il codice segnaposto nella funzione InitializeService con il codice seguente:In the code for the data service, replace the placeholder code in the InitializeService function with the following:

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

    In questo modo i client saranno in grado di accedere in lettura e scrittura ai set di entità Orders e Order_Details e solo in lettura ai set di entità Customers.This enables clients to have read and write access to the Orders and Order_Details entity sets and read-only access to the Customers entity sets.

Vedere ancheSee Also

Procedura: sviluppare un servizio WCF in esecuzione in IISHow to: Develop a WCF Data Service Running on IIS
Configurazione del servizio datiConfiguring the Data Service