当前位置: 首页 > 知识库问答 >
问题:

laravel auth由生成的令牌没有护照和jwt

薛弘阔
2023-03-14

我试图做api-auth通过检查生成令牌从登录用户的用户名与md5加密方法在laravel 5.5飞,不想保存令牌到用户的表。当用户注销时,令牌将无效。URL将是这样的:

http://myserver.com/products?token=......

我该怎么做?

新增-这是第44届世界技能大赛的测试项目,以下为测试项目文件:

  1. 认证

A.登录(v1/auth/登录)

描述:供客户端通过用户名和密码获取登录令牌

请求方式:POST

标头:标头授权基础

请求参数:

  • 正文:

o用户名

o密码

响应结果:

  • 如果成功

O头:响应状态:200

o机构:

 令牌“”:授权令牌(在注销前有效)。系统将使用md5加密方法从登录的用户名生成令牌

 角色(管理员/用户)

  • 如果用户名/密码不正确或为空

o头:响应状态:401

o body:消息:无效登录

B.注销(v1/auth/logout?AUTHORIZATION_TOKEN

描述:对于服务器,用户的令牌无效

请求方法:获取

标头:标头授权基础

响应结果:

  • 如果成功

O头:响应状态:200

o机构:

 消息:注销成功

  • 如果未经授权的用户访问它,

数据:

o消息:未经授权的用户

o响应状态:401

a、 所有位置(v1/place?token={AUTHORIZATION_token})

描述:供客户端列出数据库中的所有位置(包括基于频率索引的用户搜索历史记录)

请求方法:获取

标头:标头授权基础

响应结果:

身体:

o阵列上的所有数据;由id、名称、纬度、经度、x、y、图像路径、描述组成。

o响应状态:200

  • 如果未经授权的用户访问它,

数据:

o消息:未经授权的用户

o响应状态:401

...

共有3个答案

苏彦君
2023-03-14

您可以创建令牌api并为其提供cron作业或会话,此外,您可以像jwt一样进行重置,而无需将其保存到数据库中,但您可以手工操作

哈襦宗
2023-03-14

该项目只是为了竞争——我解决了以下问题:

>

  • 用户通过发送用户名登录

    如果成功,服务器将用户名的md5代码保存到会话中,并将代码返回给客户端;

    客户端将md5代码作为令牌保存到本地存储器中,通过后续请求发送到服务器;

    服务器验证令牌以决定客户端是否可以访问其资源。

    就这样!只是为了竞争,不是为了生产。

  • 申屠洛华
    2023-03-14

    您可以创建自己的中间件,在该中间件中为用户指定角色并使用自己的令牌创建,或者您可以使用jwt,jwt更适合在数据库中取消保存令牌

     类似资料:
    • 我正在尝试使用Laravel护照,我不知道我是否发现了一个bug或者我遗漏了什么。 登录控制器: 因此,我在用户登录时创建令牌。在数据库中,我看到生成的令牌在字段处过期:一周后,所以它是正确的。但如果我更改了旧日期的值,我仍然可以使用此令牌。。。 拉威尔只是忽略了这个领域?为什么? 我做了研究,但我有点困惑。。。很多人说代币不会过期或在一年内过期。但后来我发现了一些关于这个片段的帖子: 我明白To

    • 问题内容: 我正在编写一个想同时用作Web应用程序和API提供程序的nodejs应用程序。验证用户身份后,我想为该用户分配一个令牌,以用于后续请求。这对于Web应用程序的通行证非常有用,因为我只是在会话中使用令牌对用户进行序列化和反序列化。但是,在响应API请求时,没有用于设置存储会话信息的cookie。理想情况下,护照将在会话和请求正文中都寻找令牌。有什么方法可以配置通行证来完成此任务吗? 问题

    • 我正在开发标准的LaravelRESTAPI。我正在关注Laravel5.4API认证(Passport)文档。 我需要的是,用户应该通过API登录并获得不会过期的访问令牌。 表具有列。默认值为一年。我把expires_at日期改成了昨天。但它仍然有效。我搜索关于Laravel Passport令牌寿命。有人说过期日期没有根据任何要求进行检查。 是真的吗?如果是真的,那么列的目的是什么?有人能解释

    • 问题内容: 我正在使用Apache Oltu框架实现OAuth 2.0提供程序服务器,以寻找有关如何在Java中生成访问令牌和秘密令牌的想法。请指教。 问题答案: OAuth 2.0 规范并未说明如何生成令牌和秘密令牌。因此,由您决定是使用一些现有的/锚定数据来生成令牌,还是要使用随机序列来生成令牌。唯一的区别是,如果您使用大概已知的数据(例如,用户数据,例如用户名,创建日期等),则可以在需要时随

    • 我使用的是Laravel框架5.3版。9,通过composer全新下载未添加任何内容(除了)。 我做了文件中建议的所有事情。创建了表,路由启动,一切正常。然而,我需要护照的API。 我的路线是这样的: 所有的路由都在那里,没有相关的路由,因为Passport不提供任何开箱即用的东西。 API本身旨在供可信客户端使用,它是为需要登录的移动应用程序而设计的。不过,所述登录将绕过几个步骤。 一旦用户访问

    • https://login.microsoftonline.com/common/oauth2/v2.0/authorize?client_id=your_app_client_id&response_type=code&redirect_uri=https%3a%2f%2flogin.microsoftonline.com%2fcommon%2foauth2%2fnativeclient&res