2

Apps for smart TVs (Samsung, LG and some others) are using HTML5+js+CSS to code. I wonder the feasibility of integrating Microsoft Azure ACS into those smart TVs. I did asp.net mvc 3 and windows phone from samples to build ACS into them but I don't really know how to integrate ACS into smart TV apps.

I assume it works more like the windows phone 7 approach, but still no luck on finding out exactly the work flow of ACS on windows phone 7 even I got the codes (it just works out of the box).

Anyone here could make some comments and advice will be great help.

Thanks.

2 Answers2

0

The workflow for WP7 can be found in the source here:

    /// Initiates a token request from ACS following these steps:
    /// 1) Get the list of configured Identity Providers from ACS by calling the discovery service
    /// 2) Once the user selects their identity provider, navigate to the sign in page of the provider
    /// 3) Using the WebBrowser control to complete the passive token request complete
    /// 4) Get the token
    /// 5) If a RequestSecurityTokenResponseStore is specified, set the token.
    /// 6) return the token using the RequestSecurityTokenResponseCompleted callback

But I doubt you want to go down that road, unless the SmartTV has something like a browser control. The other solution would be:

  1. Show a custom login page (you can get the list of identity providers in JSON format)
  2. User selects an identity provider (and will be redirected to Windows Live login page for example)
  3. User logs in and is redirected back to http://smarttv.local/something through a POST request (the url of your app in the SmartTV, if it even has an url??)
  4. Handle the POST request in your app (is that even possible in the SmartTV?)
Sandrino Di Mattia
  • 24,739
  • 2
  • 60
  • 65
  • Thanks for you reply! For both methods you mentioned here, I am having a problem for how the smart TV app can receive the ACS token. It uses HTML5+JS+CSS for coding. I don't think it has a url or a web browser control (it is a browser already.) – Michael Tse Sep 14 '12 at 10:43
  • You have to provide more information on how these apps are constructed and hosted. Is there a (web) server somewhere? Do they run in a sandbox (that is a web browser)? What services does this sandbox provide? (e.g. what network services are available). – Eugenio Pace Sep 14 '12 at 14:39
  • 1
    Smart TVs are mostly written in HTML5+JS+CSS, it does not have a web server, it uses AJAX to retrieve data from network. – Michael Tse Sep 15 '12 at 08:22
0

Any platform that can render a web page can likely use ACS. If the standard window.external.Notify() mechanism used in the WP7 sample isn't supported, you can make your own webpage that accepts the post from ACS and massages the token into whatever kind of HTML or script that the TV app needs to consume. This is an interesting scenario, though. Is there really a scenario where people are entering usernames and passwords for federated apps on a TV?

Oren Melzer
  • 749
  • 4
  • 7