High Level explanation of how Windows Live ID works

If you are using a web application that uses Windows Live, such as Microsoft Dynamics CRM Live, you might be wondering, how does authentication work.

The first step in the process is that the web application registers with the Windows Live ID service. This registration includes creating unique keys for the application and storing a URL that the Live ID service will use to redirect users after they sign into Windows Live ID.
The 2nd step is when the application wants to authenticate the user. The application will provide the 'sign-in' link on it's web page. When clicking on the link, the user will be redirected to a sign-in page hosted by Windows Live ID. When this happens a token is also passed that identifies the application. By passing in a token that was given to the application at time of registration, the sign-in page understands who is calling it.
The 3rd step is that the user logins into Live ID. After logging into Live, the Live service redirects the user to the applications designated page that it registered with. The application can then redirect back to the original landing page the user came in on. Presto, you are authenticated to the Web application.

Windows Live does not store or pass any permissions ( or personal ) information to the application. It's the applications responsibility to manage the permissions. Windows Live is used to handle the authentication. Authentication is validating that the user is who the user claims they are. Below is a high level architectural diagram of the Windows Live ID Service.

For client side applications it's little different. On the client side, applications utilize a special component named MSIDCRL40.dll. This component handles a variety of services such as encryption. The client side application will need a to create or retrieve a key that is used. In a software+service model, this might include calling into a web service of a online application to retrieve a dynamically generated key that is used. After the call is made, a token is used that can be presented to the application that can be checked against the original key to ensure that the authentication was not compromised. After that the user is authenticated and again the application handles permissions internally. In both scenarios, the authentication is time stamped to be valid only for a specific time. The time stamped token can be  'cached' just like cookies are used in web application.

Leave a comment

Recent Entries

  • How to remove a VMHost from SCVMM 2008 R2 forcefully

    这几天碰到个问题,有个服务器原来安装的是 2008 Server Core系统,上面跑 Hyper-V,已经将其导入 SCVMM 2008 R2 来管理。最近实在是嫌 Server Core 管理太不方便,于是想把系统换成带图形界面的,也没在 SCVMM 里面把主机删除,直接就重装了,IP和计算机名什么的都没变,结果问题来了,再打开 SCVMM 的控制台,发现这台主机联系不上(当然,因为重装的没有了 Agent),就想删掉再重加,结果删除过程报错:Error (801) VMM cannot find ISO object . Recommended...

  • Outlook Mobile Update

    现在你可通过新的Microsoft Office Outlook Mobile更新程序和 Microsoft Exchange Server 2010 来保证你手上的信息是最有价值的。 这次的 Outlook Mobile 更新仅针对 Windows Mobile 6.1 的手机。 当你的手机连接到 Exchange Server 2010 时,如果有适合的更新你会收到自动的提示。 如果你的手机的系统是 Windows Mobile...

  • 哥们,我的更新汇总在哪呢?

    我刚刚在我全新的 Exchange 2010 服务器上安装了更新汇总1 - RU1, 然后运行 Get-Exchangeserver -Identity MyExchangeServer (译者: 可以用 Get-Exchangeserver -Identity MyExchangeServer | fl ExchangeVersion, AdminDisplayVersion)得到以下关于AdminsDisplayVersion 和 ExchangeVersion 的版本信息: 嗯, 这看上去有点眼熟(译者:...

  • Exchange 2010 Update Rollup 2

    Today Microsoft released Update Rollup 2 for Microsoft Exchange Server 2010. RU2 comes 3 months after the release of RU1. The list of included fixes...

  • HMC 4.0 Update Rollup 3 has been updated

    Description of Update Rollup 3 for Hosted Messaging and Collaboration 4.0http://support.microsoft.com/kb/979702/en-usMicrosoft released an update rollup that is dated December 2009. This update fixes issues that...

Close