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

限制Laravel Passport中的客户端授权

安泰平
2023-03-14

我使用Laravel Passport(Laravel 5.6),使用密码授予。我有两个客户端:appcms。我希望cms客户端能够读取、写入和删除。app客户端应该只能读取。

为什么不为此使用作用域?因为应用程序客户端的用户名和密码以及范围请求都是硬编码的。因此,理论上可以对其进行反编译,并更改范围。

因此,我需要根据客户的要求限制行为。在拉威尔护照上可以吗?


共有1个答案

劳英华
2023-03-14

如果您的应用程序具有用户/密码,则意味着您可以对其用户(应用程序)进行身份验证并分配权限/角色策略,您应该检查此项https://laravel-news.com/two-best-roles-permissions-packages

如果您想实现作用域,请记住它们不直接应用于用户,因为在oauth2中,基本上您是在授予应用程序代表用户访问某些资源的权限,请选中此答案Laravel Passport scopes

因此,您可以尝试一个授权流,基本上每次您的客户端需要某个特定范围时,它都会向用户请求授权,就像任何应用程序在权限更改时所做的那样。

 类似资料:
  • 我正在使用quarkus.rest客户端调用外部API,并希望将这些调用的频率限制在每秒50次,这样我就不会淹没外部服务。在没有侧车方法的情况下(通过代码),推荐的实现方法是什么?

  • 我正在使用SpringWebFlux和netty构建一个微服务。在内部,我使用web客户端进行RESTAPI调用。如何控制通过webclient调用RESTAPI的速率?我猜backnpressure只适用于单个请求/回复,不适用于对我的微服务的多个请求。Amy pointers将不胜感激。谢谢

  • 问题内容: 我正在使用一组受oAuth2保护的服务。当前它是这样工作的:客户端使用其用户名和密码登录。我用这些交换令牌。我将令牌保存在会话中,并在每次调用服务时提交。它可以工作,但是问题是我完全手动执行此操作,而没有使用很多Spring Security oAuth2支持。外观如下: 如您所见,我自己创建了身份验证提供程序。它正在接受该标准,但正在产生自己的扩展,该扩展也保留了实际内容,因此将其保

  • 我正在编写一个类,用于创建对BigQuery和Google云存储的授权。 在过去,我曾使用,但已被弃用。我试图使用,但我发现它只允许我使用,而我需要。 我知道可以从转换为,但我不知道如何将它们转换成相反的方向(转换为)。例如,我像这样创建连接: 有人能给我指明如何实现这一目标的方向吗? 谢谢!

  • 我在unix(OSX)机器上使用kqueue建立了一个TCP/IP echo服务器,它可以打开100个TCP/IP端口,每个端口接受4000个客户端,我使用另外15台机器建立了大约23万个连接。(每道工序4000康纳,每箱4道工序) 服务器似乎可以接受更多,但问题是客户端,建立更多连接是有限制的。如Windows XP-3000、Windows7、UNIX-16384。 我怎么克服?

  • 我们使用keycloak-adapter与Jetty一起使用KeyCloak进行身份验证和授权。根据OIDC Auth流程的Keycloak文档: 我们有连接到Jetty并使用Auth的webapps。因此,我们创建了一个公共客户端,它对WebApp/REST身份验证非常有效。 问题是,一旦我们启用授权,客户端类型就会从公共类型转换为机密类型,并且不允许将其重置为公共类型。现在,我们在汤里。由于授