1 / 23

Best Practices: Creating OData Services using WCF Data Services

Required Slide. SESSION CODE: DEV323. Best Practices: Creating OData Services using WCF Data Services . Alex James Program Manager Microsoft Corporation. alexj@microsoft.com twitter.com/ adjames blogs.msdn.com/ alexj. Do you know…. How to lock down your service?

zasha
Download Presentation

Best Practices: Creating OData Services using WCF Data Services

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Required Slide SESSION CODE: DEV323 Best Practices: Creating OData Services using WCF Data Services Alex James Program Manager Microsoft Corporation alexj@microsoft.comtwitter.com/adjamesblogs.msdn.com/alexj

  2. Do you know… • How to lock down your service? • How to allow generic clients to connect? • How to authenticate users of your service? • How to authorize users? • How to version you service?

  3. Why does this matter? • You should only allow what you intend • You want to have as much reach as possible • No one wants to create a new Identity • You can’t disclose too much information • Versioning is inevitable

  4. Building a basic OData Service Alex JamesProgram ManagerMicrosoft DEMO

  5. Next steps – Lock it down • EntitySet Access Configuration • Server Driven Paging • Authorization

  6. Locking it down Alex JamesProgram ManagerMicrosoft DEMO

  7. Increase the Reach • Make our feeds Browser friendly • Allow cross site access from: • Silverlight • Javascript • Re-use identities • Forms Authentication • Claims Based Authentication • Support multiple versions

  8. Increase your reach Alex JamesProgram ManagerMicrosoft DEMO

  9. JSONP - Concepts Site 1 Site 2 <script> ajax callback({“x”=1}) {“x”=1} Site 1 Site 2

  10. 5) Redirect user to Return URL Resource Owner Printing Service Return URL 3) Redirect Resource Owner to Auth URL 1) ask for a request token + return URL 2) Request token + auth URL 7) Access Token Grant “Printing Service” Access to you Photos? user 6) Try to use Request Token to acquire Access Token password Photo Service Ok Ok Protected Resources 4) Check for authenticated user consent 8) GET protected resources + Access Token

  11. Versioning • With DataServiceContext.IgnoreMissingProperties: • You can safely • Add a new optional property • Remove a property – Read Only • Add unrelated new types • But lots of things can go wrong. • Add a required property or navigation • Remove a property – Read/Write • Rename a property (fail). • Remove a type / feed • Realistic Solution • V1/service.svc/ • V2/service.svc/

  12. Recap You just learned how to: • Expose just what you want • Authenticate users of your service • Authorize users • Increase the reach of you service You know how to create a REAL service…

  13. Create an OData Service Today! • Its easy ! • You know how to do it right • Tell us about it and we will tell the world: www.odata.org/producers

  14. Aaron Skonnard: “Having our On-Demand courses pointed to by OData.org has really helped increase the awareness around our offerings over the past few months.” Fabrice Marguerie: “early producers will be referenced in Sesame Data Browser's connection dialog...”

  15. Presentation Resources • Music Store App - http://mvcmusicstore.codeplex.com/ • OData Explorer - http://www.silverlight.net/content/samples/odataexplorer/ • JSONP - http://code.msdn.microsoft.com/DataServicesJSONP • Contact Me: • Twitter: http://twitter.com/adjames • Blog: http://blogs.msdn.com/alexj • Email: alex.james@microsoft.com

  16. Additional Resources and Announcements • MSDN Data Developer Center: http://msdn.com/data • ADO.NET Team Blog: http://blogs.msdn.com/adonet • OData Blog:http://odata.org/blog • WCF Data Services Team Blog: http://blogs.msdn.com/astoriateam • EF Design Blog: http://blogs.msdn.com/efdesign • Data Platform Development Forums:http://msdn.com/dataand click on the “Forums” tab Come to the Data Development station in the DAT Track Area (yellow section of the TLC) to register for a Zune HD give-away!

  17. Required Slide Speakers, please list the Breakout Sessions, Interactive Sessions, Labs and Demo Stations that are related to your session. Related Content • DEV324: Data Development GPS: Guidance for Choosing the Right Data Access Technology – Monday | 1:00 – 2:15 PM | Rm 383 • DEV208: Open Data for the Open Web – Tuesday | 5:00 – 6:15 PM | Rm 279 • DEV205: Overview of the Microsoft ADO.NET Entity Framework – Wednesday | 1:30 – 2:45 PM | Auditorium B • DEV303: Building RESTful Applications with the Open Data Protocol – Wednesday | 3:15 – 4:30 PM | Rm 283 • ARC306: Open Data for the Enterprise – Thursday | 8:00 – 9:15 AM | Rm288 • DEV305: Deep Dive into Microsoft ADO.NET Entity Framework – Thursday | 1:30 – 2:45 PM | Auditorium A • BOF05-DV: Microsoft ADO.NET Entity Framework 4.0: What’s Your Take? – Thursday | 9:45-11:00 AM • DEV13-HOL: Building Applications and Services Using Open Data Protocol • DEV11-HOL: Using the Entity Framework in Microsoft .NET Framework 4.0 and Microsoft Visual Studio 2010 • TLC-77: Microsoft SQL Server R2 Data Development (ADO.NET, OData, XML) – TLC Yellow

  18. Required Slide Track PMs will supply the content for this slide, which will be inserted during the final scrub. Track Resources • Visual Studio – http://www.microsoft.com/visualstudio/en-us/ • Soma’s Blog – http://blogs.msdn.com/b/somasegar/ • MSDN Data Developer Center – http://msdn.com/data • ADO.NET Team Blog – http://blogs.msdn.com/adonet • WCF Data Services Team Blog – http://blogs.msdn.com/astoriateam • EF Design Blog – http://blogs.msdn.com/efdesign

  19. Required Slide Resources Learning • Sessions On-Demand & Community • Microsoft Certification & Training Resources www.microsoft.com/teched www.microsoft.com/learning • Resources for IT Professionals • Resources for Developers • http://microsoft.com/technet • http://microsoft.com/msdn

  20. Required Slide Complete an evaluation on CommNet and enter to win!

  21. Sign up for Tech·Ed 2011 and save $500 starting June 8 – June 31st http://northamerica.msteched.com/registration You can also register at the North America 2011 kiosk located at registrationJoin us in Atlanta next year

  22. © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

  23. Required Slide

More Related