首页 文章

jwt api身份验证如何工作(使用dingo-laravel)

提问于
浏览
1

我知道问题有点广泛,但让我缩小范围 . 我已经构建了一个带有laravel的小社交网络,我期待用dingo构建api我的问题是我想知道开发人员使用我的api(开发人员身份验证)这让我感到困惑,因为使用api的开发人员必须验证我的网站用户发布或获取有关他们的信息...我想知道这种身份验证应该如何工作 .

说一个开发者dev@gmail.com密码'dev123'想得到一个特定用户的帖子,网址是mydomain.com/api/users/445/posts/4,用户445有电子邮件user@gmail.com和密码'user123' . 如何使用jwt管理处理开发人员身份验证和用户身份验证 . 我已经查看了jwt上的一些教程,但对是否是api用户(开发人员)或正在进行身份验证的平台用户感到困惑 . 在此先感谢,我将非常感谢有关如此可用的教程 .

1 回答

  • 0

    如何使用jwt管理处理开发人员身份验证和用户身份验证 .

    每个设备上的每个用户和每个开发人员一旦通过您需要选择的方法登录,就会收到自己的持票人令牌 . 作为持票人令牌的一部分,您可以对自定义数据进行编码,例用户ID或用户角色(或可能是更好的哈希) .

    从令牌中提取此信息,您可以使用它来根据用户ID,角色或您选择的任何内容授予对特定资源的访问权限 .

    有关"claims"您可以委托JWT使用的示例,请参阅https://stormpath.com/blog/jwt-the-right-way,例如:

    //header
    {
        "alg": "HS256", //denotes the algorithm (shorthand alg) used for the  signature is HMAC SHA-256
        "typ": "JWT" //denotes the type (shorthand typ) of token this is
    }
    
    //claims
    {
        "sub": "tom@stormpath.com",
        "name": "Tom Abbott",
        "role": "user"
    }
    

相关问题