我给出了以下设置:
- Keycloak Server at https://auth.example.com
- 具有 LDAP 提供程序配置的 AD 连接
- LDAP 提供程序配置中设置的 Kerberos 选项
- 使用任何 AD 用户进行身份验证都有效
- 在浏览器中使用Kerberos 票证进行身份验证有效
据我所知,将cURL与Kerberos身份验证一起使用,它看起来像这样:
$ curl --negotiate -u : https://app.example.com/index.html
可以使用资源所有者密码凭据授予类型以非交互方式获取访问令牌。但是我如何使用带有Kerberos 票证和 Keycloak 的cURL 来获取它呢?
官方文档中有一个例子 [1]:
curl
-d "client_id=myclient"
-d "client_secret=40cc097b-2a57-4c17-b36a-8fdf3fc2d578"
-d "username=user"
-d "password=password"
-d "grant_type=password"
"http://localhost:8080/auth/realms/master/protocol/openid-connect/token"
- [1] https://www.keycloak.org/docs/latest/securing_apps/index.html#_resource_owner_password_credentials_flow
- [2] https://www.keycloak.org/docs/latest/server_admin/index.html#troubleshooting-2