Couchdb外部认证
我正在开发一系列实用程序应用程序,其中每个应用程序都可以在桌面,移动设备和网络上使用。 经过一番研究后,我决定与客户端上的pouchdb以及服务器上的couchdb一起提供脱机同步。
用户可以在网络上创建一个账户(Laravel Spark应用程序)来管理他们的应用程序订阅/付款以及访问应用程序的Web版本。 在移动设备和桌面上,用户可以使用他们的凭证登录每个应用程序来解锁功能。
我正计划在过滤复制(基于文件所属的应用程序)的情况下在couchdb中为每个用户提供一个数据库方法。 基本要求是用户可以在应用程序中登录一次,然后永远安全地复制到couchdb(直到退出)。
根据下面列出的用例,使用couchdb进行身份验证的最佳方法是什么?
最后,我找到了通过Laravel将所有请求代理到CouchDB的最佳方法,利用Passport包进行API身份验证。
为此,我使用SparkServiceProvider
的Spark::createUsersWith()
函数,通过以下步骤设置用户注册的CouchDB数据库:
然后用户可以使用他们的用户名和密码登录到应用程序,以接收OAuth2密码授权令牌。
随后,所有同步请求都将与身份验证令牌一起提交给我的同步代理控制器,详情请参阅本要点。
要保存搜索,可以将PouchDB设置为自动发送OAuth令牌,如下所示:
this._remoteDB = new PouchDB(url, {
ajax : {
headers : {
"Authorization" : "Bearer " + localStorage.getItem("token")
}
}
});
链接地址: http://www.djcxy.com/p/81151.html
上一篇: Couchdb external authentication
下一篇: Authenticating a CouchDB user against an external server