在我们的 Meteor 应用程序中,我们目前使用 accounts-base 包,它允许我们注册和登录存储在 MongoDB 中的用户。我们还可以在整个应用程序中使用 Accounts API,这非常方便。
所以现在,我们的后端团队正在创建一个身份服务来登录我们的多个产品。他们选择了 Auth0 作为注册用户的提供者。
所以现在当我在我的应用程序中提交我的登录表单时,Meteor.loginWithPassword我需要调用oath/ro我在 Auth0 中注册的应用程序的端点,而不是使用。
POST https://tet.au.auth0.com/oauth/ro
Content-Type: 'application/json'
{
"client_id": "fdsfdsse4324242dsffs", // testapp
"username": "",
"password": "",
"id_token": "",
"connection": "",
"grant_type": "",
"scope": "",
"device": ""
}
文档:https ://auth0.com/docs/auth-api#!#get--authorize_db
使用oauth的沙箱,我可以登录。但我不知道如何将它合并到 Meteor 中。我在 Meteor's Atmosphere 中找到了 auth0-lock 包,但这似乎迫使你使用他们的登录表单。这不是我们的要求。
我一直在阅读此博客https://themeteorchef.com/recipes/roll-your-own-authentication/#tmc-setting-up-oauth-services关于 oAuth 并设置自己的。
然而,这让我更加困惑,因为这是使用像 Google 或 github 这样的 oAuth。
我想要的是控制登录和注册表单,并在 auth0 中登录或创建用户。我期望某种 Meteor.loginWithPassword 可以指向一个服务,该服务将https://test.au.auth0.com/oauth/ro使用用户名和密码调用调用,并在成功存储令牌并在 Meteor 中设置用户以登录。
我该怎么做,我已经在谷歌上搜索了几个小时,几乎所有的例子都是 oauth 并且没有使用这个身份提供者。
帮助!