couchdb - 将遗留身份验证模块集成到 couchapp

Posted

技术标签:

【中文标题】couchdb - 将遗留身份验证模块集成到 couchapp【英文标题】:couchdb - integrating a legacy authentication module to a couchapp 【发布时间】:2012-01-11 09:59:16 【问题描述】:

有没有一种方法可以将旧系统的身份验证集成到 couchapp?

我的意思是,我有一个包含用户帐户和所有内容的系统,它是用一些遗留语言编写的,它们是什么都无关紧要。 然而生活还在继续,我想使用像沙发这样的华丽工具。但是我不想把我所有的系统都移植到沙发上——这将永远不会发生!

我想做的是在沙发上开发任何新的模块,让它与原来的遗留系统一致,利用现有的身份验证和会话机制,并在它之上提供新的功能。

我有什么选择?

如果您需要更多信息 - 询问。

【问题讨论】:

【参考方案1】:

根据您的遗留系统的运行方式,我可以看到几种方法:

    使用您的旧系统作为代理。让用户像往常一样登录旧系统,点击它的仪表板,并有一个指向新“功能”的链接。该链接会将他们带到遗留系统中的一个 URL,该 URL 只是将请求和响应代理回 couchapp。

    您可以进行 Cookie 身份验证。您必须将所有旧用户复制到沙发上的 _users 表中。在您的旧应用程序中,登录时(从旧服务器到沙发)将登录详细信息发布到 _session,取回 cookie,然后在浏览器上设置该 cookie。然后用户可以在您的两个应用程序之间导航,只要您有适用于 cookie 的主机名。

    如果您的旧系统无法修改,但它设置了会话 cookie,您可以在您的 couchapp 前面放置一个代理来查找 cookie,或重定向到您的旧登录。

    您可以创建自己的沙发身份验证模块(可能需要做很多工作)。

希望这些想法有所帮助。都有不同的优点和缺点。

【讨论】:

大体方向很明确,或多或少是我自己能想到的。 1是不可能的。 2 的简单性很有趣,然而,这意味着系统之间存在巨大的数据冗余。您能否详细说明/提供更多关于 3 和 4 的线索?

以上是关于couchdb - 将遗留身份验证模块集成到 couchapp的主要内容,如果未能解决你的问题,请参考以下文章

CouchDB 的服务器端任务

使用 CouchDB Android 进行用户身份验证

CouchDb 使用列表读取身份验证

我应该为在 CouchDB 上运行的 Rails 3 使用哪个身份验证 gem/插件?

Cloudant 身份验证:缺少 _users 数据库

无法在 watchOS 上使用 GameKit(游戏中心)对本地玩家进行身份验证