自己来写一个Passport 服务器

看了思归的文章,感觉很有挑战性.就以Demo 的形式做了一个简单的实现. 自己来写一个Passport 服务器. 

第一个问题:

    用户的信息的处理.Passport 服务器来处理这些信息,当然了只会是一些简单的用户信息. 比如说性别,电话等

第二个问题:

    Passport 服务器与 应用程序之间的数据交换. 看了 MS 的Passport SDK ,发现远没有我们想象的简单.MS 使用了COM 与 Passport 服务进行数据交流, 我们在短时间内也不太可能编写一个 COM 组件来处理.  当然想到了WEB 程序常用的cookie ,因为在DotNet 中的(From 验证模式)中也使用了cookie , 可是因为域的问题.在两个不在同一台机器上的程序是无法共享cookie 的(我没有找到过好的方法).所以我想到了 查询字符串.

第三个问题:

Ticket 的生成.当Passport 生成验证 Ticket 后,把Ticket 信息回发(使用“查询字符串“给请求应用程序.应用程序把Ticket 写入cookie (这是应用程序的cookie ,当应用程序使用它时不会有域的问题).  这个 MyPassportAuthenticationTicket 类要自己来写. 如果你想用 FormsAuthenticationTicket 不代替的话也是可以的,但要自己来对它进行加密传送.如果你想用FormsAuthentication.Encrypt方法 那是不行的.因为它的加密算法中加入了服务器machineKey .

第四个问题:

自己来实现一个PassportIdentity ,把功能进行一个封装.实现其中的 LogoTag2 方法.来生成一个登录链接.

最后一个问题:

就是不断完善了,不过有系统还有一个点问题,明眼人一看就知道了,返回链接参数的保持问题.

 

不知道,有没有更好的方法. 大家一起来讨论一下.

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值