我想开发一个使用nextcloud用户帐户的应用程序(NodeJS、vueJS、postgreSQL)。其想法是用户使用他的nextcloud ID进行身份验证,然后可以访问nextcloud和我的网站。请注意,我的应用程序不是nextcloud模块或nextcloud应用程序。这是一个完整的网站,但是我想把它建立在nextcloud上来识别用户
我在网上做了一些研究,但是我没有找到一个简单的解释如何做…。有可能吗?
奥利维尔
发布于 2019-05-18 17:32:15
您可以采取几种不同的方法,通过nextcloud实例中的帐户对外部应用程序的用户进行身份验证。其中包括:
使用OAuth 2.0将允许您的网站通过nextcloud实例对用户进行外部身份验证。
在您的情况下,这是如何工作的:
nextcloud-instance-address/index.php/apps/oauth2/authorize)的OAuth授权端点(可以通过普通链接完成),同时使用客户端标识符标识自身。your-instance-address/index.php/apps/oauth2/api/v1/token)。您的网站获取访问令牌作为响应。nextcloud-instance-address/index.php/ocs/v2.php/cloud/user?format=json的用户配置API发出授权请求。将访问令牌存储在基于cookie的会话中是个好主意。
安装非常简单(至少在您的nextcloud实例方面)--您必须在nextcloud管理帐户的管理员安全设置部分添加您的网站。您必须指定重定向URI,您的网站将使用该URI在成功登录时检索请求令牌。客户端秘密密钥和客户端标识符都将在nextcloud的管理面板中为您生成。
本教程将帮助您在node.js中创建webiste的后端。在您的例子中,使用者是您的网站,服务提供者是您的nextcloud实例。
如果有些事情看上去不清楚的话,可以随意问一问。祝你好运,编码愉快!
https://stackoverflow.com/questions/56089821
复制相似问题