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

用Laravel构建一个REST API,仅供授权应用(如Facebook)使用

阳修永
2023-03-14

我正在用Laravel构建一个REST API,现在我有了一个URL

api.example.com/posts/3/comments

现在我想知道如何保护这个API,因为正如现在所做的那样,任何试图在这个URL上发出getpost、...请求的人都将得到积极的结果。

我希望这个API只对授权的应用程序可用(像Facebook API)。就目前而言,那些应用程序只是我的网站和我的iOS应用程序。

我正在考虑创建一个表applications来存储应用程序的键。但我不知道如何在不发布应用程序密钥的情况下对其进行身份验证(这显然是不安全的)。

有什么建议吗?谢谢.

共有1个答案

闻人志
2023-03-14

我建议您使用类似于jwt的东西。使用它,您在设备上本地创建并存储一个令牌,然后每次有人向服务器发出呼叫时,您都要检查该令牌,并确保他们是他们自称的人。如果愿意,您可以存储令牌以备过期。它们通常用于无状态应用程序中,因此您需要远离服务器会话的概念。您可以使用中间件来过滤进入您的应用程序的HTTP请求。

 类似资料:
  • 概述 1、用户对开发者进行应用授权后,开发者可以帮助用户完成相应的业务逻辑。 2、授权采用标准的OAuth 2.0流程。 授权流程 快速接入 第一步:应用授权URL拼装 拼接规则: http://openauth.yourdomain.com/oauth2/appToAppAuth?app_id=2019032617262200001&redirect_uri=http%3a%2f%2flocal

  • 我试图使用授权代码授予登录第三方客户端在护照Oauth服务器。 在oauth服务器中,我创建了id为3 secret:Ux6p201tRFrPQ5lLZI1RMce1GYD6qTJ9Qvj7nM2Z回调的客户机:'http://127.0.0.1:8001/callback' 但当我从第三方应用程序创建请求/重定向时,我得到:未经验证的401和重定向到登录,我也尝试添加 在AuthServiceP

  • 我对授权和Spring Security有疑问。为了在我的一个服务中实现授权检查(在一个面向服务的架构环境下),我尝试看看是否可以使用Spring-Security。在浏览spring security文档时,我在这里读到Spring Security在内部使用Spring的AOP。 参考:您可以选择使用AsheJ或Spring AOP执行方法授权,也可以选择使用过滤器执行Web请求授权。您可以一

  • 目标:Java授权服务器: OAuth2.0授权代码授予细粒度权限流(不仅仅是SSO服务器) 用户管理和身份验证:自定义数据库 客户端管理和身份验证:KeyCloak 在开发中应该使用什么Keycloak适配器/API? 如果用户要出现在Keycloak中,应该如何管理/显示它们? 我是Keycloak的初学者,虽然我认为我理解主要原理,但它似乎是一个丰富的工具,我担心我可能仍然在使用它的最佳方法

  • 我正试图用Node.js和Express编写一个实用程序,它将使用Spotify API。然而,我一直在试图找出使用Express的“客户端凭证流”来获得使用API的访问令牌的最佳方式... https://developer.spotify.com/documentation/general/guides/authorization-guide/#client-credentials-flow

  • Using a delegation key The collaborator can now push to the repository using Docker Content Trust. Docker will automatically choose and pick the right key for the targets/release role. Edit the file o