自己来写一个Passport 服务器

原创 2007年10月08日 15:51:00

看了思归的文章,感觉很有挑战性.就以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 方法.来生成一个登录链接.

最后一个问题:

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

 

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

 

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

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

滴滴passport设计之道:帐号体系高可用的7条经验

洪泽国,2007年硕士毕业于中科大,先后在Oracle、腾讯等公司就职,主要关注在线服务的高可用、高性能和易扩展 业务场景 先简单介绍一下业务场景,我来自滴滴平台部门,平台是一个业务支...
  • daiyudong2020
  • daiyudong2020
  • 2016年07月04日 00:04
  • 1933

passport.js学习笔记

Node.js的一个认证模块
  • u011468626
  • u011468626
  • 2016年03月29日 22:55
  • 1669

西部数据移动硬盘My Passport Ultra 不支持在mac写入操作

西部数据移动硬盘My Passport Ultra 不能写入的问题
  • yangliding2011
  • yangliding2011
  • 2016年11月29日 11:15
  • 7807

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

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

如何选择一个安全的密码

要去解释如何选择一个好的密码,最好方式是去解释如何破解它。通常的破解方式被认为是脱机密码猜测破解。在这个方案中,攻击者从一些需要验证的地方拿到加密的密码文件。他的目的是解密这个加密的密码用来给自己验证...
  • dc8899
  • dc8899
  • 2014年02月28日 11:28
  • 1168

来写一个模块加载器吧

模块化 随着前端代码量的徒然增多,前端模块化必然趋势。 总的来说,起初前端模块化主要是为了解决一下问题: 全局变量污染 命名冲突 代码复用 依赖管理 前端模块化的发展历程又可以分为一下几个阶段: ...
  • zhoujie_zhoujie
  • zhoujie_zhoujie
  • 2017年04月14日 16:21
  • 403

来写一个讨人厌牛皮癣的广告

用js写一个牛皮癣广告
  • AmberWu
  • AmberWu
  • 2017年05月19日 18:56
  • 315

用c写一个简单json处理器之具体实现,应该可能会不断完善吧(三)

#include #include #include "json.h"static int json_match_array(const JsonValue *key1,const JsonValu...
  • cabing2005
  • cabing2005
  • 2016年09月09日 15:31
  • 499

用CMD文件对拍

不多说,很简单,上图
  • u011775691
  • u011775691
  • 2014年05月02日 12:04
  • 369
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:自己来写一个Passport 服务器
举报原因:
原因补充:

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