gpt4 book ai didi

java - 我应该为移动应用程序的后端使用 OAuth(或其他什么)吗? - 在这种情况下只有*一个* "third-party"应用程序

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

我正在开发一个移动应用程序及其后端 (Java)。我应该如何对用户进行身份验证(使用我们自己的帐户系统,而不是 Google/GitHub 帐户之类的东西)?一种方法是创建 OAuth2 服务器。然而,我的后端并不是一个巨人,我在 OAuth 的定义中只有一个“第三方应用程序”......

所以我想知道在这样的移动应用程序中最好的身份验证方式是什么?谢谢!

附言另一个想法是使用 cookie,就像过去开发浏览器网页时一样。但我很少看到应用程序这样做。我看到他们中的大多数发送 Authorization: Bearer the_token_values...

P.S.2 我正在使用 Flutter 和 Java Spring。

最佳答案

如果您的身份验证系统支持 OAuth,请务必使用它。 OAuth 的优势在于标准化。使用标准协议(protocol)有很多优点。最重要的是,很难想出一个防弹认证系统。过去十年中许多引人注目的黑客攻击都归因于本土认证协议(protocol)。

使用 OAuth 或其他广泛接受的协议(protocol)的另一个优势是库的可用性。如今,您可以找到适用于任何平台和任何语言的 OAuth 库。

请记住,OAuth 并不是市面上唯一的游戏。还有其他很好的协议(protocol)。 mTLS 可能是最可靠的证明。它需要强大的公钥基础设施,但它可能是最难破解的。如果您在旧式环境中使用 Active Directory 并编写内部应用程序,请考虑 Kerberos。最后是 SAML,它非常企业化并且使用起来很痛苦,但它比普通的 OAuth 更灵活一些。

关于java - 我应该为移动应用程序的后端使用 OAuth(或其他什么)吗? - 在这种情况下只有*一个* "third-party"应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60611240/

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