Why SharePoint and Windows Azure are Just Plain Better Together Steve Fox Director, MCS Microsoft Corporation
Fundamentals
IAAS PAAS SAAS
What‘s in the Windows Azure Spring Preview? Data Layer Service Layer Integration Layer Client Layer PC Games ConsolePhoneTabletBrowser On- premises Service On- premises Database Office SharePoint Web/Worker Cloud Services Media Services Hadoop Web Sites Virtual Machines Caching Drive Queues Tables Blobs SQL SQL Reporting SQL Database Storage Stream Insight SP GA Connect CDN Traffic Manager AD Access ControlService Bus SQL Data Sync EAI / EDI Virtual Network Load Balancer
Data Synchronization
WFE INDXR APP SVRSQL SVR Data Sync SQL Azure Data Sync SQL Database SQL Azure Data Sync PCPhoneTabletBrowser Office SharePoint
Demo Data Synchronization
ENTERPRISE Application-Layer Connectivity & Messaging Service Bus Data Synchronization SQL Azure Data Sync Secure Machine-to- Machine Connectivity Windows Azure Connect Secure Site-to-Site Network Connectivity Virtual Network
Streaming Media
“Build-On” Media Partners and Customers Silverlight Windows Phone HTML5 Flash Partner CDNs Origin Caching Windows 8 XBOX “Build-In” Partner Media Processors
BLOB Storage WFE INDXR APP SVRSQL SVR CDN Cache PCPhoneTabletBrowser O365 SP-O AMS Streaming CDN Cache Media Azure Media Services (AMS)
Demo Streaming Media in SharePoint
Azure Media Services Code Snippet … string inputFilePath CloudMediaContext mediaContext = new CloudMediaContext(new Uri(" "F7DF85E4-E A FE60D409C", "7HCe8R6n", "urn:Nimbus", " IAsset asset = mediaContext.Assets.Create(inputFilePath); string fileName = asset.Files[0].Name; IAccessPolicy readPolicy = mediaContext.AccessPolicies.Create("CanReadFor30Minutes", TimeSpan.FromMinutes(30), AccessPermissions.Read); asset.AccessPolicies.Add(readPolicy); ILocator locator = asset.Locators.Where(c => c.AccessPolicyId == readPolicy.Id && c.ExpirationDateTime > DateTime.UtcNow).First(); … var uriBuilder = new UriBuilder(locator.Path); uriBuilder.Path += Path.AltDirectorySeparatorChar + fileName; Uri fullUrl = uriBuilder.Uri; …
“Lift and Shift”
SP Standalone WFE INDXR APP SVRSQL SVR SharePoint Farm WFE INDXR APP SVRSQL SVR AD/DC/DNS SharePoint Farm LOB VPN Tunnel On-Premises Cloud
Demo Creating a SharePoint VM in Azure IAAS
PowerShell to Create/Migrate SP Farm ## Create SP WFE1 $spwfe1 = New-AzureVMConfig -Name 'SP-WFE1' -AvailabilitySetName $avsetwfe ` -ImageName $spimage -InstanceSize Medium | Add-AzureProvisioningConfig -WindowsDomain -Password $dompwd ` -Domain $domain -DomainUserName $domuser -DomainPassword $dompwd ` -MachineObjectOU $advmou -JoinDomain $joindom | Add-AzureInputEndpoint -Name 'http' -LBSetName 'lbhttp' -LocalPort 80 -PublicPort 80 -Protocol tcp -ProbeProtocol http -ProbePort 80 ` -ProbePath '/healthcheck/iisstart.htm' | Set-AzureSubnet $spsubnet... $dns1 = New-AzureDns -Name 'dns1' -IPAddress ' ' New-AzureVM -ServiceName $cloudsvc -AffinityGroup $ag -VNetName $vnetname -DnsSettings $dns1 -VMs $spwfe1, $spwfe2, $spwfe3, $spwfe4, $spapp1, $spapp2, $spsql1, $spsql2
All-Cloud Solutions
All-Cloud Solution Patterns
Web Service Proxy (HTTP or HTTPS) LOB Data (SQL Database) LOB Data External List SSSECT SharePoint (On-Premises or Online) Device Interoperability
Demo Creating a Cloud-Based LOB Application using BCS
partner DocAve & SharePoint
Summary
What about Identity? OptionDevelopment or OOBSample Scenario Active DirectoryOOBCreate VM in the cloud and federate with Brooklyn. ADFS FederationOOBFederate on-premises users for SSO to O365. Office Live IDOOBLog into O365 session with your Office Live ID. Windows Azure Active DirectoryDevelopment/OOBUses token and secret key to authenticate service/ device or federate (ADFS 2.0) with claims for SSO. WIFDevelopmentIdentity management across multiple systems with no flow-through. oAuthDevelopment/OOBCan use with ACS or leverage SSO. BCSOOBConfigure external content types to pass username and password claim using SSS and Application ID. SQL Connection StringDevelopmentObfuscate in application code or encrypt. Shared Access PermissionsDevelopmentSet permissions on a BLOB in Windows Azure storage. CertificateDevelopment/OOBUpload/manage certs within Azure for HTTPS service endpoints. Headless AuthenticationDevelopmentAccess SP-O from Azure using system account.
Call to Action
Connect. Share. Discuss. Learning Microsoft Certification & Training Resources TechNet Resources for IT Professionals Resources for Developers
The Business Collaboration Platform for the Enterprise & the Internet The capabilities of SharePoint 2010 provide a powerful business collaboration platform
Connect. Share. Discuss. Learning Microsoft Certification & Training Resources TechNet Resources for IT Professionals Resources for Developers
Evaluations Submit your evals online
Welcome to a Deep Dive on Bio-molecular Polymers