OAuth 和 OpenIDConnect 是否仅用于针对我们的 API 验证和授权其他人的应用程序?

Are OAuth and OpenIDConnect is just used to authenticate and authorize other people application against our API?

我是 OAuth 2.0 和 OpenIDConnect 的新手 我想问一下我们自己创建的客户端应用程序(移动应用程序和服务器端应用程序)的登录、注册流程是否需要实现 OAuth 2.0 和 OpenIDConnect?

因为我一直在搜索实现登录、注册流程的教程,目前最佳做法是使用 OAuth 2.0 和 OpenIDConnect,但它们的实现是为了保护我们的 API 免受其他人的客户端应用程序的侵害。此身份验证流程是否仅用于保护其他人的客户端应用程序访问我们的 API?

谢谢

OAuth 2.0 要么非常简单,要么非常复杂,具体取决于您对该技术的理解以及如何实现授权。

I'm new to OAuth 2.0 and OpenIDConnect I want to ask if is it necessary to implement OAuth 2.0 and OpenIDConnect for our login, register flow of our own created client application (mobile apps and server side app)?

不,没有必要实施。认证和授权的方法有很多种。 OAuth 只是比较流行的方法之一。

一个更简单但更糟糕的方法是只为您的用户实现用户名和密码。在这种情况下,更简单是一个相对术语,因为现在您需要担心将用户名和密码安全地存储在某个地方。

OAuth 可用于保护 public 对您的网站、应用程序(REST 端点)等的访问。 OAuth 可用于服务器到服务器的授权。最后,OAuth 只是一种创建提供给服务的令牌的方法。该服务验证该令牌的访问权限并拒绝或继续请求。

授权和身份验证是需要大量经验才能正确实施的领域。有许多细微差别需要考虑。这就是为什么这么多公司被破坏,他们做错了或实施了薄弱的方法。在我访问的一家公司进行审计时,我记下了 10 个用户名和密码,因为每个人的显示器上都有黄色便利贴。即使是最好的 OAuth 实施也会在该级别的安全性方面出现问题。