【问题标题】:OAuth when you own all the clients, the authorization server and the protected APIs当您拥有所有客户端、授权服务器和受保护的 API 时的 OAuth
【发布时间】:2019-11-04 06:11:02
【问题描述】:

我想知道 OAuth 是否适合我。

我需要编写一个可以被多个客户端访问的 REST 服务(或多个 REST 服务)。所有客户都将由我编写。服务将由我编写。而对于授权服务器,它只会使用本地账户,根本不需要外部登录。

鉴于此,我觉得隐式流程和授权代码授予流程不适合我。我觉得在这种情况下使用重定向会很愚蠢,因为我编写了客户端、身份提供者等等。

我应该根本不使用 OAuth 吗?我应该改用什么?或者如果我要使用 OAuth,我是否必须使用 ROPC 以避免重定向?

如果 OAuth 是答案,我可以使用任何解决方案吗? Azure AD B2C?或者我应该自己编写,如果是,有没有人有任何关于如何使用 .NET Core 来做到这一点的资源?

我应该提到,我们还将使用长期运行的服务,其中客户端凭据流非常适合。

【问题讨论】:

    标签: android ios oauth .net-core oauth-2.0


    【解决方案1】:

    隐式流只是 OAuth2 为客户端应用程序定义的获取令牌的方式之一,该令牌随后将用于调用服务。它只能由浏览器嵌入式 (SPA) 应用程序使用。 A blog I wrote lists the other flow types and when to use them

    是的,您应该考虑使用 OAuth2,除非您不关心谁调用您的服务,因为没有其他人可以(您在 Fort Knox 内完全封闭的网络上运行)或者您无法想象有人会想要调用它们。 (对不起我的幽默感)。 OAuth2 的目的是管理应用程序相互调用的权限。它相对于其他协议的优势在于它支持最常见的场景(守护程序客户端、Web 应用程序、IOT 设备等)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-11-23
      • 1970-01-01
      • 2015-05-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-23
      • 2021-09-16
      相关资源
      最近更新 更多