35
SharePoint and Azure Integration In this session we will cover various ways of integrating SharePoint 2010 with Windows Azure and look at benefits and limitations of the different options. Contact Us About Me: 201 Mission Street Amit Chachra San Francisco, CA Principal Consultant, (415) 962-4600 Magenic Technologies [email protected] [email protected]

Session 2 Integrating SharePoint 2010 and Windows Azure

Embed Size (px)

DESCRIPTION

In this session we cover various ways of integrating SharePoint 2010 with Windows Azure and look at benefits and limitations of the different options. From simple to complex integration patterns, session will include SQL Azure and SharePoint integration with External Lists and Visual Web Parts, Azure hosted WCF Services integration with SharePoint using Silverlight and jQuery, and using SharePoint Event Handlers and workflows with Azure.

Citation preview

Page 1: Session 2   Integrating SharePoint 2010 and Windows Azure

SharePoint and Azure IntegrationIn this session we will cover various ways of integrating SharePoint 2010 with Windows Azure and look at benefits and limitations of the different options.

Contact Us About Me:201 Mission Street Amit ChachraSan Francisco, CA Principal Consultant,(415) 962-4600 Magenic [email protected] [email protected]

Page 2: Session 2   Integrating SharePoint 2010 and Windows Azure

Agenda» Introductions» SharePoint Online with Sandbox Solutions

» Overview» Advantages» Limitations» Workarounds and Addressing Limitations

» Windows Azure» Introduction to the platform» Why integrate SharePoint 2010 and Windows Azure» Integration Approaches» Points of Integration

Page 3: Session 2   Integrating SharePoint 2010 and Windows Azure

SharePoint Online

SharePoint Online is a cloud-based service, hosted by Microsoft, for businesses of all sizes. Instead of installing and deploying Microsoft SharePoint Server 2010 on premises, any business can now simply subscribe to SharePoint Online to provide their employees with an enterprise-grade solution for creating sites to share documents and information with colleagues and customers.

Page 4: Session 2   Integrating SharePoint 2010 and Windows Azure

SharePoint Online customization capability patternsCustomization Capability Tools and PatternCreate and deploy no-code workflows Use SharePoint Designer to create and deploy no-code workflows.

Customize content types Use SharePoint Designer to customize content types.Brand master pages and create page layouts Use SharePoint Designer to brand master pages.Create and deploy site templates Use SharePoint Designer to create and deploy site templates.

Consolidate, filter, roll up, and render data Use the Data View Web Part to create mash-ups, filtered views, rollups, and general renderings of SharePoint data or data consumed from web services or RSS feeds.

Create browser-based forms Use Microsoft InfoPath 2010 to design browser-based forms for lists and workflows.

Access and manipulate data from HTTP requests

Use the SharePoint web services to access and manipulate data from HTTP requests without writing code for that manipulation.Workflows also support new events that enable complex business processes to be chained together in a modular, manageable way.

Create and deploy custom code-based solutions

Use Visual Studio 2010 to create code-based sandboxed solutions that can be deployed to SharePoint Online environments.

Page 5: Session 2   Integrating SharePoint 2010 and Windows Azure

5

Sandbox Solutions

Enables developers to deploy solutions without IT action

Enables IT to maintain health of SharePoint servers

Isolates custom code from running in SharePoint process

Quicker time-to-market solutions for site owners

Page 6: Session 2   Integrating SharePoint 2010 and Windows Azure

6

Sandbox Solutions contd…» A sandboxed solution looks and behaves like a farm solution, but a sandboxed

solution’s assembly must be marked to allow partially trusted callers. » Remember that a sandboxed solution can be deployed as a full-trust solution

and gain the expanded capabilities that come with running in full trust because nothing in the .wsp solution file specifies it as a sandboxed solution or a farm solution. This is determined by how the solution is deployed.

» Sandboxed solutions have access to a large subset of functionality in the Microsoft.SharePoint namespace. Essentially all the classes below SPSite are available.

» In general, the sandbox process prevents you from accessing data outside the site collection where the solution has been deployed.

Page 7: Session 2   Integrating SharePoint 2010 and Windows Azure

7

Sandbox Solutions - Advantages»Work directly with the customer (site collection owner)»Predictable limitations defined by SharePoint [SharePoint Online]»Speed to market – no need to involve administrator in deployment»Errors won’t affect the hosting SharePoint site

Page 8: Session 2   Integrating SharePoint 2010 and Windows Azure

8

Sandbox Solutions - Limitations» Can only access subset of SharePoint 2010 server API» Blocked from making remote calls

» Web service requests» ATOM feed requests» Custom database calls

» Blocked from connecting to on-premise LOB systems» Limited to working in current site collection only» Blocked from accessing the Page object» Subject to resource monitoring & automatic throttling

Page 9: Session 2   Integrating SharePoint 2010 and Windows Azure

9

Addressing Sandbox limitations

• Resource libraries that register specific actions• Deployed as farm trust solution• Sandboxed solutions can call these deployed

actions

Sandbox Solutions

can Utilize “Full-Trust”

Proxies

• Client-side Web Part – JavaScript / jQuery / etc• Silverlight Web Part

Move Business Logic off Server

Page 10: Session 2   Integrating SharePoint 2010 and Windows Azure

10

Processing model - Sandboxed solution calls a full-trust proxy

Page 11: Session 2   Integrating SharePoint 2010 and Windows Azure

DemoFull trust proxy operation from a Sandboxed solution in SharePoint

Page 12: Session 2   Integrating SharePoint 2010 and Windows Azure

Azure is an operating system in the cloud that enables reach, reusability and scale

Page 13: Session 2   Integrating SharePoint 2010 and Windows Azure

Windows Azure Platform

Page 14: Session 2   Integrating SharePoint 2010 and Windows Azure

14

Addressing SharePoint challenges with Windows Azure

• Mitigate constraints imposed by sandbox• Achieve things not possible in the

sandbox in Windows Azure

Break out of the Sandbox

with Windows Azure

• Move business logic to Windows Azure• Host long-running processes• Access On-Prem systems via Service Bus• Advanced authentication via ACS

Windows Azure can solve

a different problem

Page 15: Session 2   Integrating SharePoint 2010 and Windows Azure

Why integrate Azure and SharePoint?» Scalable endpoint cloud-based data and services with SharePoint

solutions» Migrate to hybrid or cloud-based custom services» Cost optimization» Integrate cloud with core features of SharePoint

» E.g. Workflow, collaboration, search, document management, Silverlight, etc.

» Extend Azure applications into Office» Parity across SharePoint & Office 365

Page 16: Session 2   Integrating SharePoint 2010 and Windows Azure

Points of IntegrationAzure Integration HowSharePoint Client Object Model Interact with Windows Azure data in a list.Business Connectivity Services (BCS) Model data from Windows Azure or build external list to SQL Azure.

Silverlight Create UI against Windows Azure services or data.Sandboxed Solutions/SharePoint Online

Silverlight application leveraging Windows Azure deployed to site collection.

Office Custom Client Consume data directly from Windows Azure or BCS list exposing data.

Standard/Visual Web Parts Leverage services and data from Windows Azure.Open XML Manage Windows Azure data in a document.REST Use REST to interact with Windows Azure data to integrate with SharePoint.

Office Server Services Combine with Open XML to auto-gen docs (such as PDFs) on a server.

Workflow/Event Receivers State or events that tie into Windows Azure services, workflows or data.

LINQ Use for querying Windows Azure data objects.Search Federate search to include Windows Azure data.

Page 17: Session 2   Integrating SharePoint 2010 and Windows Azure

Integrating SharePoint 2010 & Windows Azure» Consume Windows Azure-based solution in SharePoint

» Content Editor Web Part» Sandboxed Web Part» Business Connectivity Services / External Content Type» Search

» Enable Windows Azure-based solution to interact with SharePoint» SharePoint Client Object Model (CSOM)» REST / OData feeds» SharePoint’s authentication configuration considerations

» Classic Mode» Claims Based Authentication (ex: SharePoint Online)

Page 18: Session 2   Integrating SharePoint 2010 and Windows Azure

SharePoint 2010 and Azure Integration scenarios

Simple• SharePoint hosted IFRAME

Moderate• Client side solutions (CEWP)

with JavaScript & jQuery• BCS with SharePoint

Designer 2010

Complex• Programmatic BCS• Consuming custom Azure-

hosted services• Securing custom Azure-

hosted services with certificates

• Azure Access Control Services

• Pluggable workflow services• Azure calling SharePoint via

CSOM / REST / Web Services

Page 19: Session 2   Integrating SharePoint 2010 and Windows Azure

ASP.NET and iFrame

SharePoint

Content Editor Web Part

Page 20: Session 2   Integrating SharePoint 2010 and Windows Azure

ASP.net and iFrame

Pros ConsSimple& lightweight Styling & Formatting

No code No ‘deep’ integration

No deployment to SP No Distribution through SP artifact

Page 21: Session 2   Integrating SharePoint 2010 and Windows Azure

DemoCreate a Simple Azure Web Role and access it from within SharePoint using iFrame

Page 22: Session 2   Integrating SharePoint 2010 and Windows Azure

Azure Blob Storage

Page 23: Session 2   Integrating SharePoint 2010 and Windows Azure

Azure Blob Storage and SharePoint

Page 24: Session 2   Integrating SharePoint 2010 and Windows Azure

DemoAzure Blob Storage and SharePoint Integration

Page 25: Session 2   Integrating SharePoint 2010 and Windows Azure

Consume Azure hosted service/data with Silverlight Web Part

Web Part

Silverlight

BCS

Page 26: Session 2   Integrating SharePoint 2010 and Windows Azure

DemoConsume a WCF service that is deployed to Windows Azure in a SharePoint Web Part

Page 27: Session 2   Integrating SharePoint 2010 and Windows Azure

External Content Types - BCS

Page 28: Session 2   Integrating SharePoint 2010 and Windows Azure

DemoExposing SQL Azure data using SharePoint External Content Types in Rich Office Client

Page 29: Session 2   Integrating SharePoint 2010 and Windows Azure

Azure DataMarket Data with SharePoint Excel Services

Page 30: Session 2   Integrating SharePoint 2010 and Windows Azure

DemoIntegrating Azure DataMarket Data with SharePoint using Excel Services

Page 31: Session 2   Integrating SharePoint 2010 and Windows Azure

Windows Azure AppFabric• Use the Windows Azure

AppFabric service bus to connect services deployed to Windows Azure (or the cloud in general) so that they can access and interact with SharePoint.

• Interacting with SharePoint can mean reading and writing list data, updating site information, or creating new sites or content types in SharePoint (or literally anything you can do with the SharePoint APIs).

Page 32: Session 2   Integrating SharePoint 2010 and Windows Azure

High Level Architecture – AppFabric Service Bus to access SharePoint

Page 33: Session 2   Integrating SharePoint 2010 and Windows Azure

Summary» Sandbox Solutions

» Overview» Challenges» Addressing Limitations

» Building Apps with SharePoint Solutions» Addressing SharePoint Challenges with Windows Azure» Integrating SharePoint & Windows Azure

Page 34: Session 2   Integrating SharePoint 2010 and Windows Azure

ReferencesFor Download» Download SharePoint VM

» http://www.microsoft.com/downloads/details.aspx?familyid=751FA0D1-356C-4002-9C60-D539896C66CE&displaylang=en» Download Azure Developer Center

» http://msdn.microsoft.com/en-us/azure/default.aspx» Download SharePoint and Windows Azure Development Kit

» http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=24398 » Windows Azure Marketplace DataMarket Whitepaper

» http://go.microsoft.com/fwlink/?LinkID=201129&clcid=0x409For Reference» Check out Steve Fox’s blog for code and walkthroughs

» http://blogs.msdn.com/steve_fox» Channel 9 SharePoint Developer Training Kit

» http://channel9.msdn.com/learn/courses/SharePoint2010Developer/» Channel 9 Azure Developer Training Kit

» http://channel9.msdn.com/learn/courses/Azure/

Page 35: Session 2   Integrating SharePoint 2010 and Windows Azure

Questions and Answers?Thank you