Sponsored by: Visit us on the web at www.binarywave.com Real-time application monitoring, event management, and operational health metrics for Microsoft SharePoint Reduce troubleshooting time by up to 30% Increase efficiency and improve user satisfaction Avoid downtime and costly outages Meet or exceed service level agreements Maximize investment in current infrastructure CKS:DEV The SharePoint Cowboy Patterns & Practices Eric Shupps www.sharepointcowboy.com eshupps@binarywave.com facebook.com/sharepointcowboy @eshupps Direction Design Development Delivery Direction Design Development Delivery Cost Flexibility Scalability Performance Stability Recovery Web Sites Virtual Machines Mobile Cloud Big Data Media Direction Design Development Delivery Solution Full Trust Sandbox Feature Manifest Web Part WSP Solution OAuth REST Data Web App Client Direction Design Development Delivery SharePoint 2013 Sites Services Content API Oauth App Package HTML/JS Data DEMO Creating an Autohosted App App Office SP SQL HTML/XML REST/CSOM OAUTH JSON/XML WCF .NET Javascript Synchronous Server SP Asynchronous Client Office / SP DEMO Set Client Context Using CSOM authorization User requests access App requests Request Token Provider returns Request Token App builds auth link w/ Request Token User requests URL + Request Token Provider returns access token User requests URL + Access Token App validates access token Access token validated User granted access 1 2 3 DEMO Token Handling and Authorization HTTP-based web service architecture that uses nouns and verbs to define operations Noun: Items Verbs: GET, POST, PUT, DELETE OData provides metadata, object typing and query semantics for underlying data structure (WCF data services) /items(0) Client Object Model service (client.svc) processes queries, interacts with server OM, returns formatted response (JSON, XML) /items/GetByTitle(foo) http://contoso/_api/items/GetById(1)?$select=Title,ID Location Service Resource Path Query Options DEMO Execute List Query via REST Direction Design Development Delivery SQL Database Virtual Machine Web Role Web Site Web/Business Functional Limitations Requires Conversion Full Control XS/S/M/L/XL Persistent Storage Virtual Networking Full Control Shared/Reserved 3 rd Party Assemblies TFS/Git/Web Deploy Limited Control Free Default Assemblies TFS/Git/Web Deploy No Control DEMO Deploying an Azure Web Role Provider Hosted App Catalog Unique App ID HTTPS Only SP Hosted F5 Dev Deploy App Catalog Office Store Private Package Validation No Licensing Public App & Package Validation Licensing Framework