Passport 你的网站(在你的WebSite上实现MS Passport )下

原创 2001年11月14日 20:38:00
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

Passport 你的网站 (下)

         -------(在你的WebSite上实现MS Passport

 

小气的神 2001-11-12

 

Article Type: In-Depth             

难度等级:4/9       

版本:1.01

 

 

3.     切换并接触一下Microsoft® .NET My Services Manager

这一节中,我们去接触一下Microsoft® .NET My Services Manager,为了方便我用了SDK带的例子AdventureWorks Samples(这个例子展示一些很实际的技巧和作法),其实我只使用了一些图片。另外MS也将这个例子放到了Internet上,你可以通过下面的地址去浏览和测试:http://adventureworks.passport.com/

目前的Microsoft® .NET My Services Manager还只能说是一个.NET My Services的雏形,像一个信息存储的小单元,存放有关你的Application的信息和设置,基本上它会成为以后 .NET My Services application的一个组成部分。原来的组件变成了现在的WebService,一些共享的信息无法放在注册表里了,有了这个.NET My Services Manager你可以存放许多必要的信息。另外根据Passport的规范,用户登录一次所有“participating Microsoft® .NET Passport site”的信息都是共享的。另外各个Passport site之间可能会相互调用各自提供的WebService来实现自己Site的功能。所以MS设置了这个数据库,这样每个.NET My Services 应用都将登记到这个数据库中,Passport也就成了一个很核心和重要的入口和组成部分,每个.NET My Services Application都会在这个数据库中拥有一个SiteID,并且每个SiteID下的信息保证除了本身SiteID之外其他SiteID可以共享和使用。可以想像如果没有这个数据库和Passport,即使每个网站上暴露的WebService.NET My Services恐怕不是每个人都敢调用它。Microsoft® .NET My Services Manager也设置了开发和发布产品的设置,方便了你的调试。从Preproduction rolled into Production  需要经过MS的审核,Sign a .NET Services agreement,之后你的Application正式发布。

值得高兴的是目前这些存储空间和SiteID的申请是免费的。你可以通过一个普通的有效Passport来申请得到。不过这个申请过程是极其痛苦和漫长的。你需要经过五个页面,然后需要填写下面的必选项目:

Technical Contact's First Name:

Last Name:

Title:

Department:

Address1:

Country:

Phone:

E-Mail:

Web Site Title

Domain Name

Production Domain Name :

Default Return URL:

Privacy Policy URL:

Cobrand Image URL: size468 x 60

Cobrand Image URL: size102 X 80

Cobrand Instruction Text:

Expire Cookie URL

如果成功你会获得一个SiteID,并且建立好一个.NET My Services Application。好吧,去这个地址申请一个:https://siteservices.passport.com/

而我利用的是AdventureWorks Samples中的两幅图片awbanner468x60.jpgaw_header102x80.gif,把它填写在Cobrand Image URL选项框中。

成功后你需要再次登录,选择你的.NET My Services Application,然后选择Manage My Applications,选择Download a Key,之后可以获得一个exe文件,在命令符下执行:

Partner###_#.exe /addkey

Partner###_#.exe /makecurrent /t 0 ###_#和你的SiteID有关)

然后将你的IIS服务停止。启动Passport Administration Utility,将其中的SiteID0改成你的SiteID,重新启动你的IIS服务。

    然后我是先用Passport SDK的自带的Passport Test进行测试,你可以发现原来的MSLogo变成了你在Cobrand Image URL中设置的那副图了:

<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />

 

My Passport

 

    最好能用AdventureWorks Samples来测试一下,这个程序考虑得比较周到,会自动的从注册表中获得SiteID的值。下面的运行的结果。

 

AdventureWorks Samples

 

你会发现原来的URL

http://current-login.passporttest.com/login.srf?lc=1033&id=1&ru=www.yoursite.com&tw=14400&kv=1&ct=1005697965&ems=1&ver=2.0.0248.1&tpf=2bad0084f7d730e36e8c74498b3a6cdd

变成了

http://current-login.passporttest.com/login.srf?lc=1033&id=yourSiteID&ru=www.yoursite.com&tw=14400&kv=1&ct=1005697965&ems=1&ver=2.0.0248.1&tpf=2bad0084f7d730e36e8c74498b3a6cdd

lc是语言版本,id就是SiteIDru是你成功返回的URLtw是参数

 

    (另外注册SiteID时上面的许多URLDomain Name需要你输入www.yoursite.com,如果你是在本机由没有www.yoursite.com,你可以这样试一下,修改你的hosts文件,将

127.0.0.1       localhost 修改成

127.0.0.1       www.yoursite.com

根据第二节中的描述Passport Server需要在你的机器上寻找Cookie

最后祝你顺利。

 

未来任何想要和.NET My Services的交互或互操作,必须先实现Passport的验证和授权。Passport已成为一种力量,迅速和认同者结盟同时也遭遇到MS反对者的对抗,不过有一点是清楚的:这一时刻, Microsoft走在所有竞争者和反对者的前面。

而最后不论Passport.NET My Services是否能取得成功,我们开发InternetWeb的方式已经发生了变化,这势必影响到和Web交互的使用者和其形成的商业模式。

 

特别:

 

以上文字和图片涉及其他人的隐私和个人权利,如非被授权或经本人同意,任何网站或期刊请不要刊登、转载、改编、转贴或已其他形式进行传播。以上所有文字和图片只用于内部交流,不作任何新闻发表和商业用途。

Passport 你的网站(在你的WebSite上实现MS Passport )上

Passport 你的网站 (上)        -------(在你的WebSite上实现MS Passport )小气的神  2001-11-12 Article Type: In-Depth  ...
  • ccBoy
  • ccBoy
  • 2002年01月09日 10:56
  • 1652

Passport 你的网站(在你的WebSite上实现MS Passport

  • zgqtxwd
  • zgqtxwd
  • 2008年04月24日 14:13
  • 114

新浪微博passport登录原理

对新浪的passport的流程进行了简单的分析,未深入研究   新浪的passport实现主要依托js进行实现,用户登录流程 1.首先请求地址http://login.sina.com.cn/s...
  • zyu67
  • zyu67
  • 2015年08月09日 09:38
  • 1115

使用passport管理第三方授权认证

passport是一个为Nodejs设计的,兼容Express的认证中间件。通过第三方插件的形式(以下称为strategy),可以应对各式各样的认证请求。passport具有高度的灵活性,并不依赖于任...
  • lc598470345
  • lc598470345
  • 2016年01月10日 16:28
  • 2662

使用ASP.NET中的Passport验证

Passport验证已经成为ASP.NET中很重要的一部分,它能够用来验证访问网站或应用程序的用户是否为合法用户。如果用户没有登录或者不是合法用户,Passport验证会提供集中验证方式验证用户的合法...
  • zjlovety
  • zjlovety
  • 2015年08月13日 15:32
  • 1482

基于JSON Web Tokens的单点登录(SSO)或通行证(Passport)系统方案

首先简要介绍一下什么JWT(JSON Web Token)。 JWT是一种开放的,工业标准的规范,用于在两个应用之间安全地传输信息。 JWT由3个部分组成,分别是头部、载荷、签名。 头部部分 {   ...
  • chenhaifeng2016
  • chenhaifeng2016
  • 2017年04月15日 10:35
  • 2446

passport通行证设计一例

写得比较粗糙,未打草稿,有不到之处,请原谅。新单位上班,第一份差事就是几个网站的整合。会员数据大概有120w左右。分别来自不同的...
  • mengyao
  • mengyao
  • 2007年01月09日 13:47
  • 2361

单点登录技术:微软Passport单点登录协议和自由联盟规范

原文地址:http://www.poluoluo.com/jzxy/201109/142060.html              随着互联网络应用的普及,越来越多的人开始使用互联网上提供的服...
  • shiqidide
  • shiqidide
  • 2012年06月01日 08:05
  • 5357

passport登陆的实现--跨域共享cookie和跨域共享session

前言:cookie和session是web开发中非常重要的会话跟踪技术。 主题:前一段时间,因为在开发中使用到公司的统一登录平台passport,所以就自己找了很多资料,详细的学习了一下它们的原理以及...
  • lee_123456_lee
  • lee_123456_lee
  • 2015年08月23日 19:54
  • 1102

node.js passport

http://passportjs.org/ passport 为简化 OAuth 编写而生的一个 nodejs 中间件(这里OAuth请查阅百科http://baike.baidu.com/it...
  • dsa2123
  • dsa2123
  • 2017年03月17日 21:52
  • 161
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Passport 你的网站(在你的WebSite上实现MS Passport )下
举报原因:
原因补充:

(最多只允许输入30个字)