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

Keycloak客户端凭据流澄清

谭景明
2023-03-14
POST http://localhost:8080/auth/realms/<realm>/protocol/<protocol>/token

x-www-form-urlencoded

grant_type        client_credentials
client_id         <client_id>
client_secret     <client_secret>

如果可能的话请告诉我。另外,我想传达的是Keycloak和openid-connect协议是全新的。

共有1个答案

邓鸿彩
2023-03-14

我想你误解了Oauth的一些概念。client_credentials授予只应用于服务本身以授予对特定资源的访问权。想象一下这个场景:

最终用户->单据服务->单据回购

最终用户可以通过docs服务访问回购中存储的一些文档。在这种情况下,服务决定是否授予用户对特定文档的访问权,因为repo只是一个内容服务器。显然,它们都是通过两个不同的keycloak客户端进行安全保护的。

 类似资料:
  • 我可以使用,其中一个keycloak客户机与另一个keycloak客户机通信。然而,只有当我登录到第一个keycloak客户机时,它才起作用,即它向keycloak服务器发送客户机ID、客户机机密、用户名和密码。如果我没有在第一个客户机上使用用户和密码进行身份验证,我会得到“无法设置授权头,因为没有身份验证原则”。但是我已经将keycloak配置为对第一个客户机使用服务帐户(客户机凭据授权),因此

  • 我已经考虑这个问题好几天了,从经验中我知道我通常会解决这些问题,但这次我遇到了砖墙。 我有一个在Azure DevOps YAML管道中实例化的python应用程序。该应用程序调用Azure DevOps REST API来创建存储库 该应用程序使用PAT(个人访问令牌)进行身份验证 我在Azure DevOps中创建了一个应用程序: 我的计划是让这一切都在Postman中工作,然后将我的发现移植

  • 我已经读了很多关于CORS,角,节点等的东西。老实说,我很困惑这些我应该使用哪一个,我不知道如何使用。有人能帮我简化一下吗?

  • 问题内容: 我正在尝试了解和实现新的REST服务器与现有的客户端应用程序之间的客户端凭证流。我已经像这样设置了spring-security OAuth2 。从到目前为止的理解来看,我的服务器现在应该支持以下请求: 但我明白了 由引起的是这里(弹簧安全码): 看来,我需要首先 针对服务器 进行 身份验证 。但这 不是我想做的 。我希望我的两个服务器使用共享密钥相互通信。OAuth提供者服务器应应请

  • 我试图实现一个简单的客户端凭证流spring-security-oauth2 api。我试图改编sparklr和tonr的例子,但没有成功。我也尝试按照这个线程的代码:Spring-2-leged(客户端凭证)OAuth2服务器的安全上下文设置,但它似乎不适合我。谁能给我举个例子,或者帮我做些什么来让这个工作。 spring servlet。Sparkr应用程序中的xml Spring式.xml在

  • 当授权范围限于客户端控制下的受保护资源或事先与授权服务器商定的受保护资源时客户端凭据可以被用作为一种授权许可。典型的当客户端代表自己表演(客户端也是资源所有者)或者基于与授权服务器事先商定的授权请求对受保护资源的访问权限时,客户端凭据被用作为授权许可。