SlideShare a Scribd company logo
Leveraging the
 Azure cloud for   Dennis      Marcel
                   Vroegop     de Vries
                               Regional Director
your mobile apps   DotNed
                   @dvroegop   @marcelv



      #ISMOB
Thank you!




             Workshop Mobile Development - Introduction
context   Mobile




 Case     Cloud
Context
Trend 1: Mobile
Market research
   # of mobile devices sold now exceeds # of PC’s!




Source:http://www.businessinsider.com/
Market research
   In a few years the number of mobile devices
   will dwarf the
   number of PC’s




Source:http://www.businessinsider.com/
Leveraging the azure cloud for your mobile apps
Application types
Application types

Native look & feel             --          --                  ++
Camera Access                  --          +-                  ++
GPS                            ++          ++                  ++
Secure service communication   JSON/REST   JSON/REST           JSON/SOAP
Access to calendar             --          --                  ++
Twitter integration            +-          +-                  +
Distribution                   ++          AppStore presence   AppStore presence
All apps have one thing in common
 They need data!
 Where do you get it from and where do you
 store it?
 – From the device and only on the device?
    • Perhaps 1% of the cases
 – 99% of the apps build need some way to connect
   to backend services
This imposes an important question
 Where does your data live
 How can I connect to the data
 – In your corporate network?
 – Using corporate identity?
 – Using a VPN?
 Almost all classic solutions to today’s business
 apps don’t apply to mobile
 – I connect from anywhere
How do you cope with success?
 So you create an app to draw a doodle and let
 other guess what it is, big deal right?
 – Where do you store the drawing
 – Where do you manage sessions
 – Where do you keep user scores
 – ….
 So you need a backend with services
But how many users will you have?
 Mom and Dad for sure, perhaps your brother,
 sister and their friends, nothing to get excited
 about
 – So where would you host your services?
 – Some old Linux server in your basement?
 What if I prepare for success
 – Need to buy a server farm, big upfront expenses
Now imagine success
 9 Years it took for AOL to hit 1 million users
 9 Months it took for Facebook to reach 1 million users
 9 Days it took for Draw Something to reach 1 million
 users
 – 37 million
   Total downloads of the app
 – 3 billion
   Total drawings users have created since the game was
   released seven weeks ago
 – 2,000
   Drawings created every second
How the cloud creates a level
playing field
Typical Scenario
Cloud implications on architecture
Cloud introduces a new phenomenon
– Pay as you go cost model
This can have major implications on your architecture
– Which cloud specific features do I use
Hard questions
– Pay based on I/O or Compute cycles
    • How many I/O’s to storage of my service?
    • Algorithms can make a difference!
– How much data am I going to store
    • Price differences based on storage models
Windows Azure as your backend
 Very easy to leverage the pay as you go model
 Leverage all the knowledge you already have
 – Building web application
 – Build Soap Services
 – Building Rest Services
 Just publish to azure and you are done
Azure programming model
 Important is that we can scale out our
 application
 – A.k.a. stateless services
 Azure load balances virtual machines for you
 – Nodes are not sticky!
Data communication with mobile
 Be aware that your data transfer can incur
 costs for the device owner
 – Metered networks
 Be aware of latency
 – Good for 1 call get much data
 – Bad for do many small calls with little data
What protocol to use?
•   SOAP
    – Most convenient in terms of programming and productivity
    – Proxy generation based on wsdl
    – Simple an familiar model
•   JSON
    – Better in terms of bandwidth usage
    – Harder in terms of productivity
           • Need to hand code the proxy
•   OData
    – Bandwidth wise almost similar to SOAP, since it uses Atom XML as carrier
    – Same productivity issues as JSON
    – Better for the universal client like Excel, not mobile
Your RAD services options today
 ASP.NET Web API
 – XML/JSON/OData/…
 WCF Data Services
 – JSON/OData
 WCF RIA Services
 – JSON/OData/SOAP
 All share a common programming model, just
 different origin
 All part of .NET FW and there to stay
INTERMEZZO DENNIS
Securing your services




              Securing your services
Securing your service using ACS
 All services technology can leverage security
 from ASP.NET
 But do we want to maintain yet another
 membership database with user information?
 – Another user name and password to maintain for
   the end user
 – So 2005 
 Can’t we outsource identity management?
Introducing Azure ACS
•   Let’s use the same identity most users already have
    – Live ID, Google ID, Facebook, Yahoo, etc.
•   Don’t want to write integration with each one of these
    services yourselves
•   Azure Access Control Service (ACS) does this for you
    – You integrate with ACS and ACS will handle integration
      with other parties
    – Can add any WS-Federation compliant STS like a corporate
      ADFS
ACS terminology
•   STS
     – Security Token Provider
     – Any party that can issue an authentication token
•   Identity provider
     – Party that maintains the user identity, this is Windows Live, Google, Yahoo, Etc.
•   Relying Party
     – This is the party relying on another identity provider to hand over a set of claims about who
       that identity is
          •   Windows live -> Unique id
          •   Google -> Email Address
          •   …
•   In our case we use ACS as our identity provider, who will delegate that to another
    IP
     – So IP token we get is always coming from ACS and we don’t need to worry about all other
       parties
Authentication experience


   Identity
   Providers
   Configured
   in ACS
Overview authentication steps
                                                    Identity     Realm               Your
    Phone App                    ACS
                                                    Provider      page              Service
         GetIdentityProviders()



         Request to login page                           Login           Depending on ACS
                                                                         config for SWT or
                                           IDP Token                     SAML you get a
                                                                         header or a cookie
                                       Map claims

                   ACS Token
                                                                    Cookie
                                                                    (containing ACS
                                                                    token)

         Request (with cookie)
Intercepting the cookie from login
 Used the Azure phone toolkit, to use the standard
 login control
 Extend it to work with cookies
 – Add a default.aspx page to your site that can return
   the cookie as text
 – Catch that from the page by enabling the web
   browser control to accept JavaScript notify calls
 – In default.aspx page, you add script notify call to hand
   over the cookie data
 All subsequent SOAP calls use the cookie
Intercepting the cookie
                                    Get IDP’s           ACS


                                JSON set of IDP’s

                                    Browse to IDP
                                                         IDP
                                                         (e.g. windows Live)
                               Redirect to ACS + token

                              Redirect to ACS + token
                                                         ACS

                              Redirect to return URL
  Return cookie               + SAML token cookie
  using script
  invoke                    Go to login page
                  My Site
Changing the client to use SWT
 When using rest, you can add a custom header to
 your request
 string headerValue = string.Format("WRAP access_token="{0}"", token);
 client.Headers.Add("Authorization", headerValue);


 When using WCF & SOAP, you need to add a custom
 header to the request
 using (var ctx = new OperationContextScope(proxy.InnerChannel))
 {
   HttpRequestMessageProperty httpRequestProperty = new
 HttpRequestMessageProperty();
   httpRequestProperty.Headers[HttpRequestHeader.Authorization] =
                                       String.Format("WRAP access_token="{0}"",
 token);
 OperationContext.Current.OutgoingMessageProperties[HttpRequestMessageProperty.Name]
 = httpRequestProperty;
 }
Changing the client to use SAML
 You need to add a cookie to each service request, for JSON:
 CookieCollection coll =
 App.AuthenticationCookieContainer;
 WebClient webrequest = new WebClient();
 String cookiestring ="" ;
 foreach (Cookie cookie in coll){
   if (count++ > 0){cookiestring += "; ";}
    cookiestring += cookie.Name + "=" + cookie.Value;
 }
 webrequest.Headers[HttpRequestHeader.Cookie] =
 cookiestring;

 For SOAP using WCF stack
 EventsServices.EventsDomainServicesoapClient proxy = new
 EventsServices.EventsDomainServicesoapClient();
 proxy.CookieContainer =
 App.AuthenticationCookieContainer;
DEMO

AUTHENTICATING USING ACS
Announcing…..
 http://www.meetup.com/Dutch-Mobile-NET-
 Developers-Group
Summary
Mobile trend is just taking off
Mobile is nowhere without services
Deliver services at the scale of success with the cloud
New user interface concepts will influence the way we
build apps
Each form factor requires unique interface
Cloud is there to support our massive computing demand
Pay as you go model
 – Game changer for new business models!
Cloud services can ease your development headache
Thank you!                     Dennis         Marcel
                                                    Vroegop        de Vries
                                                    DotNed         Regional Director
                                                    @dvroegop      @marcelv



                      Next session:
                      20:30
Lenni                 Occasionally Connected Systems with Windows Azure
Lobel                 and Windows Phone
Sleek Technologies
@lennilobel

More Related Content

PDF
놀면 뭐하니? 같이 개인 방송 서비스 만들어보자! - 김승준 현륜식 AWS 솔루션즈 아키텍트 :: AWS Summit Seoul 2021
PDF
윈도 닷넷 개발자를 위한 솔루션 클라우드 데브옵스 솔루션
PPTX
클라우드 기반 앱 현대화를 위한 5가지 체크리스트 - 윤석찬 :: AWS 현대적 애플리케이션 개발
PPT
.NetCampus Windows Azure Mobile
PDF
AWS에서 자바스크립트 활용 - 서비스와 개발 도구 - AWS Summit Seoul 2017
PDF
현대백화점 리테일테크랩과 AWS Prototyping 팀 개발자가 들려주는 인공 지능 무인 스토어 개발 여정 - 최권열 AWS 프로토타이핑...
PDF
더욱 진화하는 AWS 네트워크 보안 - 신은수 AWS 시큐리티 스페셜리스트 솔루션즈 아키텍트 :: AWS Summit Seoul 2021
PDF
초보 개발자도 바로 따라할 수 있는 AWS 미디어 서비스를 이용한 Live/VOD 서비스 구축 – 현륜식 AWS 솔루션즈 아키텍트:: A...
놀면 뭐하니? 같이 개인 방송 서비스 만들어보자! - 김승준 현륜식 AWS 솔루션즈 아키텍트 :: AWS Summit Seoul 2021
윈도 닷넷 개발자를 위한 솔루션 클라우드 데브옵스 솔루션
클라우드 기반 앱 현대화를 위한 5가지 체크리스트 - 윤석찬 :: AWS 현대적 애플리케이션 개발
.NetCampus Windows Azure Mobile
AWS에서 자바스크립트 활용 - 서비스와 개발 도구 - AWS Summit Seoul 2017
현대백화점 리테일테크랩과 AWS Prototyping 팀 개발자가 들려주는 인공 지능 무인 스토어 개발 여정 - 최권열 AWS 프로토타이핑...
더욱 진화하는 AWS 네트워크 보안 - 신은수 AWS 시큐리티 스페셜리스트 솔루션즈 아키텍트 :: AWS Summit Seoul 2021
초보 개발자도 바로 따라할 수 있는 AWS 미디어 서비스를 이용한 Live/VOD 서비스 구축 – 현륜식 AWS 솔루션즈 아키텍트:: A...

What's hot (11)

PDF
Survey of International and Thai Cloud Providers and Cloud Software Projects
 
PDF
20200714 AWS Black Belt Online Seminar Amazon Neptune
PDF
Build the foundation for Private Cloud
PPT
Codemotion Windows Azure Mobile
PPTX
Delivering Secure OpenStack IaaS for SaaS Products - OpenStack 2012.pptx
PPTX
Delivering Secure OpenStack IaaS for SaaS Products
PDF
K8s, Amazon EKS - 유재석, AWS 솔루션즈 아키텍트
PDF
20200303 AWS Black Belt Online Seminar AWS Cloud Development Kit (CDK)
PDF
Angrybirds Magento Cloud Deployment
 
PDF
20190522 AWS Black Belt Online Seminar AWS Step Functions
KEY
Oscon anatomy of_os_cloud_ecosystem
Survey of International and Thai Cloud Providers and Cloud Software Projects
 
20200714 AWS Black Belt Online Seminar Amazon Neptune
Build the foundation for Private Cloud
Codemotion Windows Azure Mobile
Delivering Secure OpenStack IaaS for SaaS Products - OpenStack 2012.pptx
Delivering Secure OpenStack IaaS for SaaS Products
K8s, Amazon EKS - 유재석, AWS 솔루션즈 아키텍트
20200303 AWS Black Belt Online Seminar AWS Cloud Development Kit (CDK)
Angrybirds Magento Cloud Deployment
 
20190522 AWS Black Belt Online Seminar AWS Step Functions
Oscon anatomy of_os_cloud_ecosystem
Ad

Viewers also liked (6)

PPTX
Inside Microsoft Azure
PPTX
The impact of cloud NSBCon NY by Yves Goeleven
PPTX
Application architecture for cloud
PDF
Pragmatic Security and Rugged DevOps - SXSW 2015
PDF
Containers - (Austin Cloud Meetup April 2016)
PPTX
RSA Conference 2016: Who Are You? From Meat to Electrons and Back Again
Inside Microsoft Azure
The impact of cloud NSBCon NY by Yves Goeleven
Application architecture for cloud
Pragmatic Security and Rugged DevOps - SXSW 2015
Containers - (Austin Cloud Meetup April 2016)
RSA Conference 2016: Who Are You? From Meat to Electrons and Back Again
Ad

Similar to Leveraging the azure cloud for your mobile apps (20)

PDF
Using Windows Azure for Solving Identity Management Challenges (Visual Studio...
PPTX
Consuming Web Services in Microsoft Silverlight 3
PPTX
Working with Data and Web Services in Microsoft Silverlight 2
PPTX
Authentication Server
PDF
Create a Uniform Login Experience with a Centralized Cloud Authentication Sys...
PPTX
CTU June 2011 - Windows Azure App Fabric
PDF
SharePoint in the clouds, on earth, in the subway, and in a fruit salad (mang...
PPTX
Building your first Windows Phone 7 application for SharePoint
PPTX
Enterprise API Security & Data Loss Prevention - Intel
PPTX
Building and packaging highly scalable services for maximum market penetratio...
PDF
API Reliability Guide
PPTX
Cross Platform Mobile Apps with APIs from Qcon San Francisco
PDF
O Dell Secure360 Presentation5 12 10b
PPT
Presentation sso design_security
PDF
Middleware in the cloud platform-v2
PDF
Identity in an API Economy KuppingerCole Webinar Sponsored by Layer 7
PDF
Layer 7 Mobile Security Workshop with CA Technologies and Forrester Research ...
PPTX
Identity & access management jonas syrstad
PPTX
Patterns of Cloud Applications Using Microsoft Azure Services Platform
PDF
Mobile SSO: Give App Users a Break from Typing Passwords
Using Windows Azure for Solving Identity Management Challenges (Visual Studio...
Consuming Web Services in Microsoft Silverlight 3
Working with Data and Web Services in Microsoft Silverlight 2
Authentication Server
Create a Uniform Login Experience with a Centralized Cloud Authentication Sys...
CTU June 2011 - Windows Azure App Fabric
SharePoint in the clouds, on earth, in the subway, and in a fruit salad (mang...
Building your first Windows Phone 7 application for SharePoint
Enterprise API Security & Data Loss Prevention - Intel
Building and packaging highly scalable services for maximum market penetratio...
API Reliability Guide
Cross Platform Mobile Apps with APIs from Qcon San Francisco
O Dell Secure360 Presentation5 12 10b
Presentation sso design_security
Middleware in the cloud platform-v2
Identity in an API Economy KuppingerCole Webinar Sponsored by Layer 7
Layer 7 Mobile Security Workshop with CA Technologies and Forrester Research ...
Identity & access management jonas syrstad
Patterns of Cloud Applications Using Microsoft Azure Services Platform
Mobile SSO: Give App Users a Break from Typing Passwords

More from Marcel de Vries (10)

PDF
Best practices for using open source software in the enterprise
PDF
Architecting systems for continuous delivery
PDF
Using microsoft application insights to implement a build, measure, learn loop
PPTX
Continuous delivery with Release Management for visual Studio
PPTX
Release management with tfs 2013
PPTX
Cross platform native mobile app development for iOS, Android and Windows usi...
PPTX
Release management with tfs 2013
PPTX
Developing i phone, android and windows phone 7 applications with c#
PPTX
Cross platform mobile developement introduction
PPTX
Mobile en cloud wat is de impact op ons huidige it ecosysteem
Best practices for using open source software in the enterprise
Architecting systems for continuous delivery
Using microsoft application insights to implement a build, measure, learn loop
Continuous delivery with Release Management for visual Studio
Release management with tfs 2013
Cross platform native mobile app development for iOS, Android and Windows usi...
Release management with tfs 2013
Developing i phone, android and windows phone 7 applications with c#
Cross platform mobile developement introduction
Mobile en cloud wat is de impact op ons huidige it ecosysteem

Recently uploaded (20)

PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Encapsulation_ Review paper, used for researhc scholars
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PPTX
A Presentation on Artificial Intelligence
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Electronic commerce courselecture one. Pdf
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
KodekX | Application Modernization Development
PDF
Machine learning based COVID-19 study performance prediction
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Encapsulation_ Review paper, used for researhc scholars
Digital-Transformation-Roadmap-for-Companies.pptx
A Presentation on Artificial Intelligence
NewMind AI Weekly Chronicles - August'25 Week I
Electronic commerce courselecture one. Pdf
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Review of recent advances in non-invasive hemoglobin estimation
“AI and Expert System Decision Support & Business Intelligence Systems”
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Per capita expenditure prediction using model stacking based on satellite ima...
Understanding_Digital_Forensics_Presentation.pptx
Building Integrated photovoltaic BIPV_UPV.pdf
Advanced methodologies resolving dimensionality complications for autism neur...
Unlocking AI with Model Context Protocol (MCP)
Network Security Unit 5.pdf for BCA BBA.
Agricultural_Statistics_at_a_Glance_2022_0.pdf
KodekX | Application Modernization Development
Machine learning based COVID-19 study performance prediction
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx

Leveraging the azure cloud for your mobile apps

  • 1. Leveraging the Azure cloud for Dennis Marcel Vroegop de Vries Regional Director your mobile apps DotNed @dvroegop @marcelv #ISMOB
  • 2. Thank you! Workshop Mobile Development - Introduction
  • 3. context Mobile Case Cloud
  • 6. Market research # of mobile devices sold now exceeds # of PC’s! Source:http://www.businessinsider.com/
  • 7. Market research In a few years the number of mobile devices will dwarf the number of PC’s Source:http://www.businessinsider.com/
  • 10. Application types Native look & feel -- -- ++ Camera Access -- +- ++ GPS ++ ++ ++ Secure service communication JSON/REST JSON/REST JSON/SOAP Access to calendar -- -- ++ Twitter integration +- +- + Distribution ++ AppStore presence AppStore presence
  • 11. All apps have one thing in common They need data! Where do you get it from and where do you store it? – From the device and only on the device? • Perhaps 1% of the cases – 99% of the apps build need some way to connect to backend services
  • 12. This imposes an important question Where does your data live How can I connect to the data – In your corporate network? – Using corporate identity? – Using a VPN? Almost all classic solutions to today’s business apps don’t apply to mobile – I connect from anywhere
  • 13. How do you cope with success? So you create an app to draw a doodle and let other guess what it is, big deal right? – Where do you store the drawing – Where do you manage sessions – Where do you keep user scores – …. So you need a backend with services
  • 14. But how many users will you have? Mom and Dad for sure, perhaps your brother, sister and their friends, nothing to get excited about – So where would you host your services? – Some old Linux server in your basement? What if I prepare for success – Need to buy a server farm, big upfront expenses
  • 15. Now imagine success 9 Years it took for AOL to hit 1 million users 9 Months it took for Facebook to reach 1 million users 9 Days it took for Draw Something to reach 1 million users – 37 million Total downloads of the app – 3 billion Total drawings users have created since the game was released seven weeks ago – 2,000 Drawings created every second
  • 16. How the cloud creates a level playing field
  • 18. Cloud implications on architecture Cloud introduces a new phenomenon – Pay as you go cost model This can have major implications on your architecture – Which cloud specific features do I use Hard questions – Pay based on I/O or Compute cycles • How many I/O’s to storage of my service? • Algorithms can make a difference! – How much data am I going to store • Price differences based on storage models
  • 19. Windows Azure as your backend Very easy to leverage the pay as you go model Leverage all the knowledge you already have – Building web application – Build Soap Services – Building Rest Services Just publish to azure and you are done
  • 20. Azure programming model Important is that we can scale out our application – A.k.a. stateless services Azure load balances virtual machines for you – Nodes are not sticky!
  • 21. Data communication with mobile Be aware that your data transfer can incur costs for the device owner – Metered networks Be aware of latency – Good for 1 call get much data – Bad for do many small calls with little data
  • 22. What protocol to use? • SOAP – Most convenient in terms of programming and productivity – Proxy generation based on wsdl – Simple an familiar model • JSON – Better in terms of bandwidth usage – Harder in terms of productivity • Need to hand code the proxy • OData – Bandwidth wise almost similar to SOAP, since it uses Atom XML as carrier – Same productivity issues as JSON – Better for the universal client like Excel, not mobile
  • 23. Your RAD services options today ASP.NET Web API – XML/JSON/OData/… WCF Data Services – JSON/OData WCF RIA Services – JSON/OData/SOAP All share a common programming model, just different origin All part of .NET FW and there to stay
  • 25. Securing your services Securing your services
  • 26. Securing your service using ACS All services technology can leverage security from ASP.NET But do we want to maintain yet another membership database with user information? – Another user name and password to maintain for the end user – So 2005  Can’t we outsource identity management?
  • 27. Introducing Azure ACS • Let’s use the same identity most users already have – Live ID, Google ID, Facebook, Yahoo, etc. • Don’t want to write integration with each one of these services yourselves • Azure Access Control Service (ACS) does this for you – You integrate with ACS and ACS will handle integration with other parties – Can add any WS-Federation compliant STS like a corporate ADFS
  • 28. ACS terminology • STS – Security Token Provider – Any party that can issue an authentication token • Identity provider – Party that maintains the user identity, this is Windows Live, Google, Yahoo, Etc. • Relying Party – This is the party relying on another identity provider to hand over a set of claims about who that identity is • Windows live -> Unique id • Google -> Email Address • … • In our case we use ACS as our identity provider, who will delegate that to another IP – So IP token we get is always coming from ACS and we don’t need to worry about all other parties
  • 29. Authentication experience Identity Providers Configured in ACS
  • 30. Overview authentication steps Identity Realm Your Phone App ACS Provider page Service GetIdentityProviders() Request to login page Login Depending on ACS config for SWT or IDP Token SAML you get a header or a cookie Map claims ACS Token Cookie (containing ACS token) Request (with cookie)
  • 31. Intercepting the cookie from login Used the Azure phone toolkit, to use the standard login control Extend it to work with cookies – Add a default.aspx page to your site that can return the cookie as text – Catch that from the page by enabling the web browser control to accept JavaScript notify calls – In default.aspx page, you add script notify call to hand over the cookie data All subsequent SOAP calls use the cookie
  • 32. Intercepting the cookie Get IDP’s ACS JSON set of IDP’s Browse to IDP IDP (e.g. windows Live) Redirect to ACS + token Redirect to ACS + token ACS Redirect to return URL Return cookie + SAML token cookie using script invoke Go to login page My Site
  • 33. Changing the client to use SWT When using rest, you can add a custom header to your request string headerValue = string.Format("WRAP access_token="{0}"", token); client.Headers.Add("Authorization", headerValue); When using WCF & SOAP, you need to add a custom header to the request using (var ctx = new OperationContextScope(proxy.InnerChannel)) { HttpRequestMessageProperty httpRequestProperty = new HttpRequestMessageProperty(); httpRequestProperty.Headers[HttpRequestHeader.Authorization] = String.Format("WRAP access_token="{0}"", token); OperationContext.Current.OutgoingMessageProperties[HttpRequestMessageProperty.Name] = httpRequestProperty; }
  • 34. Changing the client to use SAML You need to add a cookie to each service request, for JSON: CookieCollection coll = App.AuthenticationCookieContainer; WebClient webrequest = new WebClient(); String cookiestring ="" ; foreach (Cookie cookie in coll){ if (count++ > 0){cookiestring += "; ";} cookiestring += cookie.Name + "=" + cookie.Value; } webrequest.Headers[HttpRequestHeader.Cookie] = cookiestring; For SOAP using WCF stack EventsServices.EventsDomainServicesoapClient proxy = new EventsServices.EventsDomainServicesoapClient(); proxy.CookieContainer = App.AuthenticationCookieContainer;
  • 37. Summary Mobile trend is just taking off Mobile is nowhere without services Deliver services at the scale of success with the cloud New user interface concepts will influence the way we build apps Each form factor requires unique interface Cloud is there to support our massive computing demand Pay as you go model – Game changer for new business models! Cloud services can ease your development headache
  • 38. Thank you! Dennis Marcel Vroegop de Vries DotNed Regional Director @dvroegop @marcelv Next session: 20:30 Lenni Occasionally Connected Systems with Windows Azure Lobel and Windows Phone Sleek Technologies @lennilobel