概述: Delegated Authentication简单来讲就是为Windows Live ID user 提供权限管理的一种机制。Windows Live中提供了很多的个人信息,比如你的Calendar,你的Contacts等等,这些信息可以被第三方的应用程序开发成更多的应用,比如Contacts可以建立社交网站。 当然还有很多种使用这些信息的方法,开发者可以进一步发掘。
Core Concepts
Data providers / Resource providers
A Windows Live service that registers offers and actions with the Windows Live Delegated Authentication system. These offers and actions are the "resources" to which users grant consent for application providers to access.
也就是说Resource Provider是一个Windows Live service,应该是不能对外开放,只有Microsoft许可的产品才可以使用。
Scope/Offer(obsoleted)
Scopes are permissions that an application requests for access to resource data. For example, a View scope allows read-only access to data such as contacts or photos, and an Update scope allows write access.
Offer is a resource, registered with Windows Live ID by a resource provider, that can be accessed by an application provider on behalf of a user.
可以理解Scope为资源+动作,比如WL_Activities.View和WL_Contacts.View
Application provider
The host of a Web application that uses Delegated Authentication to communicate with a resource provider and access the resources offered by it.
Application provider 可以认为是一个第三方的程序,它会使用(读、写)Resource Provider提供的数据或者资源。Application Provider通过delegated authentication 向用户申请对某个Scope的操作权限,如果用户同意了,该Application provider就可以对该Scope的资源进行操作了。
Consent token
A formatted string that contains the consent information, including the delegation token, refresh token, available offers and actions, and expiration date, returned by the Windows Live ID consent service whenever an application provider requests consent from the user to access a resource provider on the user’s behalf.
首先Consent token是当application provider请求用户授权时,由Windows Live ID servie返回的,比如下面是一个例子:
/OAuthWrapCallback.ashx?wl_session_id=t2jl4m55rxw1f3qw5a3vwk45&wrap_verification_code=8514deb1-a7f8-d7b1-d2dd-94da7db6edbe&wrap_client_state=js_close_window&exp=WL_Contacts.View%3a1289533717%2cWL_Profiles.View%3a1289533717%2cMessenger.SignIn%3a1289533717
Delegation token
Windows Live Messenger Connect : http://msdn.microsoft.com/en-us/library/ff749458.aspx