Rest 验证APIGEE中的oAuth 2访问令牌,无需验证OAuthTokens策略

Rest 验证APIGEE中的oAuth 2访问令牌,无需验证OAuthTokens策略,rest,spring-mvc,oauth,ibm-cloud,apigee,Rest,Spring Mvc,Oauth,Ibm Cloud,Apigee,我们使用Apigee作为我们的授权服务器(as),我们在IBMBluemixPublicCloud中部署了一些SpringRESTful服务,作为我们的资源服务器(RS) 每个服务都有一个在Apigee中配置的等效代理服务。对于代理服务,我们配置了VerifyOAuthTokens策略来验证用户传递的令牌,如果传递的令牌无效,则返回错误 问题是,由于我们的RS位于公共云中(没有计划或需要移动到专用云或私有云)api端点是开放的,任何知道url的人都可以调用。虽然大家都希望通过APIGEE代理调用

我们使用Apigee作为我们的授权服务器(as),我们在IBMBluemixPublicCloud中部署了一些SpringRESTful服务,作为我们的资源服务器(RS)

每个服务都有一个在Apigee中配置的等效代理服务。对于代理服务,我们配置了VerifyOAuthTokens策略来验证用户传递的令牌,如果传递的令牌无效,则返回错误

问题是,由于我们的RS位于公共云中(没有计划或需要移动到专用云或私有云)api端点是开放的,任何知道url的人都可以调用。虽然大家都希望通过APIGEE代理调用api,但我们不能强制这样做,因为我们在公共云中,没有从APIGEE或其他地方打开端口的选项。我们希望采用以下方法来保护api端点

  • 接受每个呼叫的授权标头
  • 获取令牌并在Apigee中调用验证令牌服务
  • 对于2,我们无法找到一个APIGEE api来验证一个类似于谷歌的访问令牌

    https://www.googleapis.com/oauth2/v1/tokeninfo?access_token=1/fFBGRNJru1FQd44AzqT3Zg
    
    还是Github的

    GET /applications/:client_id/tokens/:access_token
    
    • 实际上是否有外部APIGEE服务来验证令牌
    • 如果不是,那么什么是确保只有具有有效令牌的有效用户才能访问API的最佳方法
    谢谢,
    塔塔

    你在Apigee社区看过这篇帖子了吗:

    我们做了类似的事情,但没有使用oauth标记。我们使用Apigee对第三方IDP(身份提供者)进行调用。第三方IDP无法生成令牌,但公开了一个web服务来验证用户。如果用户已成功通过身份验证(基于对从目标端点webservice收到的结果的解释),则通过将外部授权状态设置为true(链接中的步骤#2),告诉Apigee该用户已成功通过身份验证


    注意:这必须在GenerateAccess令牌操作之前在分配消息策略步骤中完成。Apigee将此解释为成功的授权,然后可以生成一个有效的oauth令牌,调用者随后可以发送该令牌以访问受保护的API。

    您在Apigee社区中看过这篇文章了吗:

    我们做了类似的事情,但没有使用oauth标记。我们使用Apigee对第三方IDP(身份提供者)进行调用。第三方IDP无法生成令牌,但公开了一个web服务来验证用户。如果用户已成功通过身份验证(基于对从目标端点webservice收到的结果的解释),则通过将外部授权状态设置为true(链接中的步骤#2),告诉Apigee该用户已成功通过身份验证


    注意:这必须在GenerateAccess令牌操作之前在分配消息策略步骤中完成。Apigee将此解释为成功的授权,然后可以生成一个有效的oauth令牌,然后调用方可以发送该令牌来访问受保护的API。

    Thank@Chris我将对此进行研究。虽然我不认为我们可以使用它,因为我们没有任何第三方IDP,但我们的服务很简单,只支持客户端凭据授予类型,我们不授权用户,只授权应用程序。这些应用程序被配置为OrganizationsHank@Chris,我将对此进行调查。虽然我不认为我们可以使用它,因为我们没有任何第三方IDP,但我们的服务很简单,只支持客户端凭据授予类型,我们不授权用户,只授权应用程序。这些应用程序被配置为组织