如何从Auth0托管的登录名获取JWT

如何从Auth0托管的登录名获取JWT,jwt,auth0,Jwt,Auth0,根据(themseleves nothing)的说法,Auth0应该在登录时为我设置一个JWT,但不清楚这意味着什么。我怎样才能得到JWT 我们已经有了一个使用托管页面的登录流,该页面可以通过CNAMECNAME.example.com访问。遵循此过程: 我进入example.com/login 我被重定向到CNAMECNAME.example.com/authorize?… 然后再次转到CNAME.example.com/login 用户名和密码是POSTed到CNAME.example.co

根据(themseleves nothing)的说法,Auth0应该在登录时为我设置一个JWT,但不清楚这意味着什么。我怎样才能得到JWT

我们已经有了一个使用托管页面的登录流,该页面可以通过CNAME
CNAME.example.com
访问。遵循此过程:

  • 我进入
    example.com/login
  • 我被重定向到CNAME
    CNAME.example.com/authorize?…
  • 然后再次转到
    CNAME.example.com/login
  • 用户名和密码是
    POST
    ed到
    CNAME.example.com/usernamepassword/login
  • 这将返回一个包含JWT的表单,并自动
    POST
    s到
    CNAME.example.com/login/callback
  • 然后会重定向回我们的主站点
    example.com/langing页面
    ,但这里没有收到JWT
  • 因为它是一个CNAME,Auth0将能够为我们的域设置一个仅限HTTP的安全cookie,这就足够了

    我刚刚开始了这个项目,并且了解到如果它是从头开始构建的,我们可以直接使用API来获取JWT,但是我不知道如何为现有的流实现它

    我确信我们遗漏了一些简单的东西,但是文档并没有提供。我需要通过API登录吗

    已编辑:要澄清登录流是否存在并使用auth0上的托管页面工作,我需要在用户登录后获取JWT


    更多信息:我们正在使用,它可以正确地将我们作为正确的用户登录(并帮助我们创建新用户),但似乎没有公开JWT。该页面确实提到了获取JWT,但提到了不推荐使用的插件。提供的链接是关于JWT的一般信息;为了通过Auth0实现身份验证,有更适合的文档。特别是,您应该从quickstarts()开始,检查是否有与正在构建的应用程序和堆栈直接相关的内容

    除此之外,您还可以检查与协议流更多关联的文档(假设您需要OIDC/OAuth 2.0):

    以上内容应该指导您使用哪个流,然后针对每个流,您可以按照链接更好地了解如何实现该流


    作为补充说明,
    /login
    端点应被视为实现细节;对于OIDC/OAuth 2.0,您需要在
    /authorize

    处开始请求,并将其作为注释提供,因为它更多的是问题而不是答案。请记住,JWT只是一种令牌格式,因此根据您要寻找的令牌(预期用途)来表达这一点很重要。OIDC身份验证请求产生ID令牌(始终为JWT);OAuth 2.0授权请求生成一个访问令牌(可以使用JWT作为格式)。您要找什么类型的代币?当前流程是如何实现的?您是否正在使用库来实现该流程?如果是,是哪一个。我们正在使用Auth0 WordPress插件。我明白了,这不仅仅是一个SDK;这意味着要进行配置,结果是最终用户通过Wordpress的身份验证。换句话说,尽管配置没有隐藏插件使用OIDC/OAuth 2.0来驱动身份验证的事实,但总体目标仍然是让最终用户通过身份验证。在这种情况下,为什么您需要直接访问最终用户JWT(在本例中是ID令牌,因为插件处理身份验证)呢?我们正在从WP巨石转移到微服务。个人服务还需要知道用户已经过身份验证。谁会调用那些API(微服务),我认为这些API需要承载访问令牌(实际上可以是JWT)作为决定调用是否被授权的手段?特别是,调用是从服务器端进行的,还是您现在也可以在更大的Wordpress站点上运行基于微浏览器(Javascript)的应用程序?