oAuth或不?

我有点迷失于信息的泛滥,我需要一些关于我可以支持的最佳方式的指导,只向可信的客户端提供API访问。

当前环境:

我们目前有一个中央服务器,通过Apache Shiro处理用户认证/授权。

我们拥有内部API,可与中央服务器进行内部通信,以验证和管理令牌。 (因此启用SSO)。

我们的客户端应用程序和API之间的通信通过SSL进行保护。
使用基于令牌的认证。

目标:

我们的目标是允许第三方应用程序和API与我们的集中认证服务器进行通信。 但我们主要担心的是网络钓鱼,因为我们只希望“有效”的各方与我们进行沟通,并且最好不允许在第三方身上暴露身份验证信息。

问题:

1-实施这种架构的最佳方式是什么? 我们应该继续使用OAuth吗? 如果是的话,是否有一种很好的方式将其与Shiro整合?

2,OAuth在移动应用程序上也会做得很好吗? (例如,除非应用程序是可信的,否则限制对REST API的访问)

3-是否有可用于Java的OAuth提供程序库,或者OAuth仅仅是我必须实现的“标准”? (例如,实施RESTful API)

4- SSO是否轻松支持OAuth?

对于模糊的问题抱歉。 我只需要一般的指导和建议。


这是我的答案,

  • OAuth 2.0是最适合你的。 我会说你应该去OAuth。
  • 肯定是的。
  • 有图书馆。 Apache Oltu和Google客户端库。
  • 基于OAuth构建的OpenID Connect规范可用于实现SSO。

  • 移动应用使用OAuth可以很好地工作。
  • 可以使用OAuth启用SSO。
  • 关于如何设置OAuth服务器/提供者的一些信息 - 高效的OAuth2.0服务器/提供者将如何工作?

    正如你所说,你需要让用户授权一个应用程序(接受/拒绝应用程序要求的权限) - 完美的OAuth 2.0用例。

    如果您需要更多关于OAuth如何工作的信息,请随时关注。

    PS - 不知道与Shiro整合。

    链接地址: http://www.djcxy.com/p/71405.html

    上一篇: oAuth or not?

    下一篇: JIT error with LINQ OrderBy using C# on iOS