问题标签 [lexikjwtauthbundle]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1718 浏览

login - 使用实体提供者和 JWT 登录

我正在尝试按照文档中编写的说明在 Api 平台项目中实现 JWT 身份验证。如果我使用内存提供程序,它可以工作,但是当我尝试使用实体提供程序配置它时,我总是得到响应 401 bad credentials。

如果我更改提供程序并使用“in_memory”而不是“my_own_provider”,它会起作用。我有一些用户的固定装置,我检查了数据库,它正确地包含了用户的行。

这是我的 security.yml

这是我的实体类:

我发现有些人问了同样的问题,但对我没有用。

1 示例这与我的问题非常相似,但我认为服务器配置不是我的问题,因为使用 in_memory 它可以工作。我也尝试了最后一个解决方案 json_login 而不是 form_login 并且我有一个错误。

2 Example Here is Unauthorized 但我的问题是我无法获得令牌。

我也尝试使用 bcrypt 而不是纯文本,但没有成功。

有什么建议么?

0 投票
1 回答
794 浏览

php - Symfony4 + jwt-auth rescipe 总是返回 {"code":401,"message":"Bad credentials"}

我有一个 Symfony4 安装,其中安装了一些常用的 Flex 捆绑包

  • 制作
  • jwt-身份验证
  • 注解
  • 行为
  • phpunit
  • 服务器

我有这个路由文件:

我有这个配置:

这个用户:

最后是这个用户提供者:

当我跑

curl -X POST http://localhost:8000/api/login_check -d _username=senso -d _password=rario {"code":401,"message":"Bad credentials"}

我总是得到

{"code":401,"message":"凭证错误"}

我的问题是:

  • 如何解决这个问题?
  • 为什么从未调用过 UserProvider::loadUserByUsername() ?
0 投票
1 回答
1172 浏览

symfony4 - Symfony 4:为 JWT 和 Behat 测试数据库

我使用 API Platform 2.1 和 Symfony 4,我使用 LexikJWTAuthenticationBundle 进行身份验证,使用 Behat 进行测试。

我无法正确设置。到目前为止,这是我的配置:

这是我的功能上下文:

现在执行时vendor/bin/behat,它只是读取.env文件(开发环境)并尝试将管理员添加到我的开发数据库中。

1)如何确保创建了测试数据库并且不使用开发数据库进行测试?我尝试.env.test使用不同的配置创建一个,但没有奏效。

2)即使没有@login场景上方的注释,它也会loginFeatureContext. 那是应该的吗?

3)我在任何地方都找不到有关如何设置的适当文档。API 平台文档似乎也不是很有帮助。参考:https ://api-platform.com/docs/core/jwt/#jwt-authentication 他们谈论createDBand dropDB,但它甚至不存在于任何地方。所以我从另一个网站上拿了它。这是正确的方法吗?

0 投票
2 回答
2093 浏览

windows - 当我使用 AES 时,“openssl genrsa”不起作用

当我尝试按照此 Symfony Bundle 的说明生成 Ssh 密钥时遇到问题: LexikJWTAuthenticationBundle

当我使用这个命令时:

该过程没有完成,这就是我所拥有的:openssl genrsa with AES

但它在不使用 AES 的情况下完美运行(:-aes256 或 128 或其他 ..)

你知道为什么吗 ?

(那么,您认为我可以在不使用 AES 的情况下继续吗?)

谢谢你。

0 投票
2 回答
816 浏览

symfony - 使用 ldaptools+jwt+fosuser 在 symfony api 中进行身份验证

在我的 api 中,我尝试使用LdapToolsBundleFOSUserBundleLexikJWTAuthenticationBundle对用户进行身份验证。一步一步地做事,并遵循fosuser 和 ldaptools 的集成文档以及后来的 jwt 文档,我设法完成了以下操作:

  1. FosUserBundle + LdapToolsBundle 成功
  2. Api 集成 + FosUserBundle + LdapToolsBundle 成功
  3. Api 上的 Jwt + FosUserBundle + LdapToolsBundle 失败。

问题是我只能登录我的数据库,但不能登录 ldap。

在我的数据库中,我有一个使用 fos 命令和任何密码创建的用户记录(使身份验证在 ldap 上而不是 fosuser 上)。到现在为止还挺好。但是一旦引入 JWT,身份验证是由 fosuser 而不是 ldap 身份验证守卫进行的。当我使用 fos 命令更改密码时,我可以毫无问题地获取令牌。

这是我的配置:

我的问题是我怎样才能使用 ldap 身份验证器?我将展示所需的工作流程

  1. 收到验证请求(用户名和密码)
  2. fosuser 提供程序找到用户或未找到用户(错误凭据--> 结束)
  3. ldap 身份验证器保护针对域服务器或错误凭据对用户进行身份验证 --> 结束
  4. 用户登录成功,收到token

但我仍然在数据库和域服务器中获得注册用户的错误凭据(用户凭据有效)

提前致谢!

0 投票
1 回答
1719 浏览

symfony - 如何在 LexikJWTAuthenticationBundle 中禁止令牌?

当用户想要退出应用程序时,需要禁止他的令牌,因为它仍然有效。

0 投票
1 回答
112 浏览

symfony - 使用 LexikJWTAuthenticationBundle 2.4 生成令牌 Symfony flex

我刚刚用 LexikJWTAuthenticationBundle2.4 测试了 symfony flex,我跟着 这里

错误是NotFoundHttpException 找不到路径“/login_check”的控制器。路由配置错误。

我必须创建一个控制器吗?没有把握!或者愚蠢是什么

这是我的安全文件:

我的 route.yml 和我的私钥:

预先感谢您的帮助

0 投票
0 回答
1049 浏览

api - 我使用 JWT 身份验证时无法使用 Symfony 登录 - Symfony 3.4

我有一个 symfony 项目,经理two参与其中websiteionic app所以当我安装JWT Authentication以获取token应用程序时,Login Form in website not working我不知道为什么?

这个问题在我使用时FOSUserBundle也会发生。

在我添加 JWT 之前,登录表单运行良好

安全.yml

登录控制器.php

登录.html.twig

路由.yml

问题是当我尝试登录时,它会返回相同的登录页面而没有任何错误。

当我尝试127.0.0.1:8000/api/login_check时,Postman我得到了Token

0 投票
0 回答
768 浏览

symfony - LexikJWTAuthenticationBundle 始终通过令牌存储获取空用户

我在后端(api)使用 symfony。身份验证过程由 FosUserBundle、LexikJWTAuthenticationBundle 和 LdapTools 处理......一切正常。

问题是当我要在控制器或服务中获得经过身份验证的用户时。

用户通过 Authorization 头认证,不存在 401 异常

但真正的问题在于安全系统

安全系统总是失败,因为 getUser() 返回的用户总是空的。

我的问题是: LexikJWTAuthenticationBundle 不应该在成功认证后注入或替换当前用户、令牌?

还是我应该以编程方式进行?我不想陷入不良做法..

提前致谢!

security.yml 信息

授权。失败处理程序(以防万一)

0 投票
1 回答
473 浏览

authentication - 带有 JWT 身份验证登录错误的 ionic 3

我用 symfony 构建了一个 API,在浏览器中一切正常,但是当我在我的设备(Android)上尝试时,我收到一个错误“服务器错误”,这是我发布代码的兼容性问题,请帮助!

登录提供商:

函数句柄错误:

包 json :

身份验证提供者:

在浏览器中工作正常,但在 android 中不行,请帮忙!