我如何使用密码授予流程防止 Laravel Api 中的令牌滥用
How can i prevent token abuse in Laravel Api using Password Grant flow
我在 Laravel api 中使用密码授予流程,但我发现生成给用户的令牌可能被滥用。
我在一个域中有 api 运行,而在另一个域中有一个 Web 应用程序正在使用它。我想确保即使有人从我的应用程序中的 Localstorage 复制令牌,它在我的消费域之外也是无用的。
我找到的解决此问题的唯一方法是使用中间件或在 Api 方法中检查域。有什么安全的方法可以做到这一点吗?我应该像我刚才提到的那样使用中间件吗?
老实说,我不认为有什么方法可以阻止这种情况。
我假设网络应用程序正在使用客户端代码获取您的 API,因此 IP 地址将始终是客户端,因此您不能将 API 限制为特定 IP。
此外,调用域是无用的,因为您可以在邮递员或任何其他 API 发送工具中伪造它。
这是一场你不会轻易取胜的战斗。
我想问的是用户可以通过哪些方式真正滥用我的 API。如果他们想使用他们的令牌在您的应用程序内对他们的帐户执行操作,那么这发生在您的应用程序内还是应用程序外有什么关系呢?
如果他们有令牌,他们怎么能滥用你的平台?如果有滥用它的方法,那么你最好处理 允许 滥用发生的根本原因,而不是试图限制令牌的使用方式。
我在 Laravel api 中使用密码授予流程,但我发现生成给用户的令牌可能被滥用。
我在一个域中有 api 运行,而在另一个域中有一个 Web 应用程序正在使用它。我想确保即使有人从我的应用程序中的 Localstorage 复制令牌,它在我的消费域之外也是无用的。
我找到的解决此问题的唯一方法是使用中间件或在 Api 方法中检查域。有什么安全的方法可以做到这一点吗?我应该像我刚才提到的那样使用中间件吗?
老实说,我不认为有什么方法可以阻止这种情况。
我假设网络应用程序正在使用客户端代码获取您的 API,因此 IP 地址将始终是客户端,因此您不能将 API 限制为特定 IP。
此外,调用域是无用的,因为您可以在邮递员或任何其他 API 发送工具中伪造它。
这是一场你不会轻易取胜的战斗。
我想问的是用户可以通过哪些方式真正滥用我的 API。如果他们想使用他们的令牌在您的应用程序内对他们的帐户执行操作,那么这发生在您的应用程序内还是应用程序外有什么关系呢? 如果他们有令牌,他们怎么能滥用你的平台?如果有滥用它的方法,那么你最好处理 允许 滥用发生的根本原因,而不是试图限制令牌的使用方式。