当前位置: 首页 > 知识库问答 >
问题:

如何使用OAuth验证MicroProfile REST客户端调用?

裴姚石
2023-03-14
@RegisterRestClient
@Produces(MediaType.APPLICATION_JSON)
interface SomeThirdPartyApiClient {
    @POST
    @Path("/some/random/url")
    fun someRandomUrl(body: SomeJsonRequestObject, @HeaderParam("Authorization") bearer: String): SomeJsonResponseObject
}

共有1个答案

龚永新
2023-03-14

正如与iabughosh讨论的那样,似乎没有自动的方法来做我想做的事情。相反,我按照Iabughosh的建议自己编写了代码。我采取了在呼叫中捕捉错误的路线。如果错误状态为401,则检索一个新令牌并重试调用。

应用程序启动并且还没有令牌时,第一个调用总是导致401,然后我得到第一个令牌。下一个401只在令牌过期(或被服务器管理员过早删除)时才出现,所以我只需获取令牌并再次执行调用。

至于现在,这似乎很有效。我将不得不看看当有大量(并行)调用时,它在生产中的效果如何。如果我找到了更好的解决方案,我会试着记住这个问题,并相应地更新它。

 类似资料:
  • 因此,为了实现这个逻辑,我认为我需要在客户端验证JWT令牌。Q1,这是一个明智的做法吗。 Q2,我正在使用的库似乎需要一个公钥才能使用它的函数。我似乎没有公钥,只有一个秘密,这是我刚刚编造的,所以它不是用一对生成的。我的公钥从何而来,或者是否有另一种方法来验证我的令牌而不使用此方法? 这一切似乎应该是显而易见的,我错过了一些东西,所以很抱歉,如果这是一个愚蠢的问题,但我似乎找不到答案?

  • 我正在努力做一些基本的事情,但我的头脑还没有完全清醒过来。我有一个spring boot应用程序,它应该公开一个rest url。 我是这样做的: 正如您所见,它使用的是另一个服务,我正试图用一个外部客户机实现该服务: 界面看起来像: 当MdmhClient在调用: 我知道要解决这个问题,我需要将证书导入jre。我正在运行Intellij IDE,并将项目的jdk路径设置为: 我还通过firefo

  • 使用GWT 2.5.0,我想使用客户端验证和编辑器。在尝试传递ConstraintViolationjava.util时,我遇到了以下错误。设置为EditorDriver,如下所示。 < code >方法setConstraintViolations(Iterable 我能找到的唯一一篇相关帖子是问题6270! 下面是一个使用Person编辑器打开PopUpDialog的例子,它允许您指定一个名称

  • 我已经按照创建新应用程序所需的步骤进行了操作,并获得了使用者密钥、密钥对以及令牌访问详细信息。现在,我想使用chrome Postman客户端调用Twitter Rest API。 我应该如何将客户密钥、机密、令牌等详细信息传递给请求?我尝试过将它们作为标头传递,也尝试过通过在postman客户端中选择OAuth1.0选项来传递它们,但我遇到了错误:

  • 使用 PIV 和 PKCS#11 验证 SSH(客户端) Yubikey 最酷的特性之一就是通过 PKCS#11 来验证 SSH。 把私钥存储在 Yubikey 上,无论在何时,当它被访问后都可以反馈你的操作。 除了常见的远程登录,所有通过 SSH 连接的操作(比如使用远程 git 服务器(比如 Github))都可以触发这一行为。这是客户端的保护手段,用来防止在未授权的情况下获取到 SSH 私钥

  • 问题内容: 我想要求基于Java 1.7内置HttpsServer的服务器进行客户端证书认证。 我似乎找不到任何使服务器无法通过身份验证的方法。无论客户端证书是受信任的,未知的还是完全不存在的,它都会愉快地为所有旧客户端提供数据。 我对文档的阅读建议,如果不信任客户端,则设置HttpsParameters.setNeedClientAuth(true)应该会导致身份验证失败。我发现有类似问题的人的