gpt4 book ai didi

laravel - 使用 OAuth 时在移动设备上存储 'client_secret' 是否安全?

转载 作者:行者123 更新时间:2023-12-04 21:10:19 25 4
gpt4 key购买 nike

我正在构建 Laravel 后端来验证来自移动设备的用户。并使用 https://github.com/lucadegasperi/oauth2-server-laravel

手机用户调用/oauth/callback 获取 Access Token

我打算使用“密码”作为授权类型。因此,在这种情况下,用户将发送以下内容:
- 用户名密码
- 客户 ID + secret

我觉得在移动设备上存储 secret 有问题。这是好习惯吗?
在对应用程序进行逆向工程时,可以轻松检测到 secret 。

任何人都可以解释使用 OAuth2 时的最佳实践吗

最佳答案

OAuth 2.0 假定 native 应用程序无法对客户端凭据保密。以下是 RFC 6749 的摘录,“9. Native Applications”。

Native applications that use the authorization code grant type SHOULD do so without using client credentials, due to the native application's inability to keep client credentials confidential.


处于难以对客户端凭据保密的环境中的客户端应用程序称为 公共(public)客户端 (RFC 6749,“ 2.1. Client Types”)。公共(public)客户端不应使用客户端 secret 进行授权和/或 token 请求。 (但这是允许的。)
如果您的移动设备是智能手机,则不应在应用程序中嵌入客户端密码。另一方面,如果您的移动设备是特殊设备,并且您认为黑客几乎不可能从移动设备中的应用程序中提取客户端密码,那么使用客户端密码将增强安全性。

关于laravel - 使用 OAuth 时在移动设备上存储 'client_secret' 是否安全?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36283353/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com