首页 > 解决方案 > Keycloak Admin CLI:设置客户端属性

问题描述


我想使用 keycloak CLI ( kcadm.sh ) 来生成一组客户端,这些客户端具有一些属性(取自 Web 界面),例如:

是否有可以传递给管理 CLI 的所有属性的参考?在示例中,我只能看到一些基本属性。谢谢

标签: keycloak

解决方案


使用命令中的 -s 设置属性是最简单的。像这样

kcadm.sh create clients -r oidcrealm -s "clientId=testClient" -s "directAccessGrantsEnabled=true" -s "publicClient=false"

作为参考,前面回答中提到的 REST API 文档很好,但另一个技巧是在 keycloak GUI 中设置您想要的配置,然后像这样导出配置。

kcadm.sh get clients -r oidcrealm

然后,所有属性都将与当前值一起列出。

kcadm.sh 也接受 JSON 作为输入,所以如果你有很多属性,这样运行可能会更容易,稍后会提供更好的概述

kcadm.sh create clients -r oidcrealm -f - << EOF
{
  "clientId" : "oidc-client",
  "redirectUris": ["http://react:3000"],
  "standardFlowEnabled": true,
  "publicClient": true,
  "attributes": {
    "pkce.code.challenge.method":"S256"
  }
}
EOF

推荐阅读