如何防止 OAUTH 本机应用程序上的用户凭据泄露

发布于 2024-12-12 09:35:01 字数 213 浏览 3 评论 0原文

我阅读了整个 OAUTH 2.0 RFP 文档,但我有点困惑。

假设我开发本机 IOS 应用程序,我想使用我的用户凭据来授权它访问我的 Facebook 帐户。

防止凭据泄露的最佳实践是什么?

我的意思是,一个简单的键盘记录器记录输入到 facebook 身份验证页面的用户和密码有什么问题?

我错过了什么吗?

任何帮助将不胜感激!

I read the entire OAUTH 2.0 RFP document and I am little confused.

Say I develop native IOS application and I want to use my user credentials to authorize it to access my facebook account.

What is the best practice to prevent credentials compromising?

I mean, what is the problem for a simple keylogger to log the user and password which are typed to the facebook authentication page?

Am I missing something?

Any help will be highly appreciated!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

↘人皮目录ツ 2024-12-19 09:35:01

简单的键盘记录程序记录输入到 Facebook 身份验证页面的用户和密码有什么问题?

理论上?没有什么。

我错过了什么吗?

是的...您忽略了全局考虑/关注...用户名/密码安全性的强度取决于使用它们进行身份验证的系统。您对客户端/系统的信任是这里的决定因素...

OAuth 的要点是授予第三方应用程序对资源的有限访问权限 - 这也可以用于 SSO 身份验证..

在 iPhone 应用程序中使用 Facebook对于 SSO,您的应用程序会将用户转移/重定向到 Facebook 应用程序。 Facebook 应用程序处理身份验证,然后使用身份验证令牌(auth token)将用户返回/重定向回您的应用程序。如果用户已经登录 Facebook 并且已经授权您的应用程序,这实际上是在后台发生的。

重点是身份验证的责任转移到了 Facebook 应用程序。如果系统受到损害,泄漏将主要发生在您的应用程序之外和 Facebook 应用程序中......但这再次指向一个更大的问题 - 系统的安全性和可信度 - 如果它受到损害,它就会受到损害。

防止凭据泄露的最佳做法是什么?

只需了解 auth_token 本质上与用户名/密码组合相同。使用 iPhone,您可能不需要存储它(而只需使用 Facebook 实例),但是,如果由于某种原因您确实需要存储信息 - 保护它。

从更全球化的角度来看? - 仅向您信任的系统提供您的用户名和密码(无需费脑子)。

what is the problem for a simple keylogger to log the user and password which are typed to the facebook authentication page?

Theoretically? Nothing.

Am I missing something?

Yes... You are missing the global consideration/concern... Username/password security is only as strong as the system using them to authenticate. It is your trust in the client/system that is the determining factor here...

The point of OAuth is to grant third party applications limited access to resources - which can also be used for SSO authentication..

To use Facebook in an iPhone app for SSO, your app transfers/redirects the user to the Facebook app. The Facebook app handles authentication and then returns/redirects the user back to your app with an authentication token (auth token). If the user is already logged in to Facebook and has already authorized your app, this essentially happens in the background.

The point being that the responsibility for authentication is transferred to the Facebook app. If the system is compromised, the leak would primarily occur outside of your app and in the Facebook app... But this again points to a larger issue - the security and credibility of the system - if its compromised, its compromised.

What is the best practice to prevent credentials compromising?

Just understand that an auth_token is essentially the same as a username/password combination. With iPhone you probably will not have a need to store it (instead just utilize the Facebook instance), however, if for some reason you do need to store the information – secure it.

From a more global perspective? - Only supply your username and password to/on systems you trust (no brainer).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文