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

类别:.NET开发 点击:0 评论:0 推荐:

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中设置的那副图了:

 

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交互的使用者和其形成的商业模式。

 


特别:

 

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

本文地址:http://com.8s8s.com/it/it46223.htm