Articles of auth0

如何使用Auth0 Lock来pipe理后端用户?

我正在用React创build一个前端,用Node创build一个后端。 我想用Auth0 Lock来pipe理用户信息 – 发送一个包含每个请求的JWT给API。 如果我需要做以下的事情之一呢? 存储一个带有作者ID的博客文章 Auth0唯一标识符是user_id ,它不是一个整数,因此不能用作ID /密钥。 我将如何处理这在服务器端用户商店? 有一个用户表来存储“个人资料”或其他类似的信息 是否在每个API请求上阅读JWT,确定该用户是否存在,然后创build一个新用户(如果不存在),或者将其与预先存在的用户关联(如果存在)。 是否高效地检查每个API请求上的用户数据库? 我不确定如何使用基于JWT的API和Auth0处理一般stream程。 编辑: 经过一番研究和思考,我的想法是:Auth0的唯一用户标识符是由它们提供的user_id 。 这里的问题是它不是一个整数。 因此它不应该被用作数据库中users表的键。 看起来好像你不应该检查每个请求上的用户数据库,但这可能是不正确的。 一个想法是在初始login时回拨到后端,如果该账户不存在,创build它,如果该账户存在,继续前进。 然后,只要用户在前端login之后,信任Auth0 JWT(如果它在后端validation),就会在每个后续请求中相信。 从我在网上看到的这个过程的很less的描述,似乎我描述的是正常的方式。 但是在某些情况下,这是没有意义的。 如果用户被禁止呢? 他们仍然可以使用主动JWT访问服务器function,直到时间到期。 因此,如果在每个API请求上检查用户存储是正常/高效,那么如何将Auth0的stringid( user_id与数据存储中的整数ID相关联来执行查询? 我正在使用一个SQL变体。

Auth0 – 用户信息丰富数据

我需要我的API来返回包含一些用户信息的对象。 例如: api/comment/123需要返回: { id: 123, author: { id: 'googleblahblah|123456789', name: 'James Bond' } } 通常我只是join用户和评论表,但在这种情况下,我不能。 我的应用程序的数据库存储用户ID,但名称(和其他用户的东西)存储在Auth0中。 很明显,对Auth0进行API调用以在每个API调用上“丰富”对象是不合理的。 我是否caching我的应用程序服务器上的所有/一些用户信息? API结果中只有用户标识,让客户端丰富数据? 人们如何处理这个问题?

Auth0和React的CORS问题

我目前正在尝试在我的NodeJS + React应用程序中实现Auth0。 给出的这个教程真的很好,很有帮助,虽然我有一个大问题。 每次我尝试login/注册通过Auth0我得到 XMLHttpRequest无法加载https://XYZ.eu.auth0.com/usernamepassword/login 。 对预检请求的响应不会通过访问控制检查:请求的资源上不存在“Access-Control-Allow-Origin”标头。 原因' http:// localhost:3000 '因此不被允许访问。 对预检请求的响应不会通过访问控制检查:请求的资源上不存在“Access-Control-Allow-Origin”标头。 原因' http:// localhost:3000 '因此不被允许访问。 所以我有一个粗略的理解是什么意思。 但我只是不知道在哪里设置所需的选项来允许这个请求Auth0。 在服务器端? 在浏览器的代码? 最好的祝福 编辑:正如RodrigoLópezDato指出的,我可以在我的应用程序中编写起源: https : //manage.auth0.com/#/applications 当我在本地开发时,我应该放什么? 我的IP?

angular-jwt如何解密我的JWT没有秘密?

Auth0团队创build了一个名为“angular-jwt”的jwtHelper类。 这件事成功解码本地JWT没有我在服务器上使用的秘密。 这怎么发生的? 如果他们不安全,那么使用秘密签名/encryption他们有什么意义? encryption令牌的服务器上的函数(使用“jsonwebtoken”): function createToken (user) { return jwt.sign(_.omit(user, 'password'), config.secret, { expiresInMinutes: 60*5 }); } 来自客户的代码: angular .module('sample.home', [ 'ui.router', 'angular-storage', 'angular-jwt' ]) .config(function ($stateProvider) { $stateProvider .state('home', { url: '/', controller: 'HomeCtrl', templateUrl: 'modules/home/home.html', data: { requiresLogin: true } }) }) .controller('HomeCtrl', function homeController ($scope, $http, store, jwtHelper) { $scope.jwt = […]