keycloak rest api查询是不是有Not条件
Posted
技术标签:
【中文标题】keycloak rest api查询是不是有Not条件【英文标题】:Does keycloak rest api query have Not conditionkeycloak rest api查询是否有Not条件 【发布时间】:2020-02-02 19:57:04 【问题描述】:Keycloak REST API 允许列出用户: http://localhost:8080/auth/admin/realms//用户
还有什么对使用以下查询过滤用户更有用: http://localhost:8080/auth/admin/realms//users?firstName=Test
是否可以使用排除条件编写查询?例如:
http://localhost:8080/auth/admin/realms//users?firstName!=AnyName(该示例不起作用,作为响应,整个用户列表返回)。或者我知道这是一门“火箭科学”,但可能类似于 http://localhost:8080/auth/admin/realms//users?role!=Admin ...
【问题讨论】:
【参考方案1】:简单的答案是否。但是您可以创建自定义 REST 端点,如 here 所述。
另请参阅:
REST API 文档: https://www.keycloak.org/docs-api/7.0/rest-api/#_users_resource
源代码: https://github.com/keycloak/keycloak/blob/b4b3527df7656bfaaee351ec414e56c683c134c2/services/src/main/java/org/keycloak/services/resources/admin/UsersResource.java#L179
【讨论】:
感谢您的详细解答!我更喜欢.Net,对我来说更简单的是在这种情况下围绕简单的 List() 结果实现一些包装器(Facade)。有一个“最大”参数而不是从其他分页开始是很奇怪的。如何在 100 的默认常量(默认值)之后在另一侧获取其他记录而不带来您的限制:)? 查询参数&first=0&max=20
可以得到按用户名排序的前20个用户。 &first=20&max=20
可以获得第二个 20 用户。 &first=40&max=20
可以获得第 3 20 个用户。
感谢您的回答。仍然不清楚如何获得用户总数。当我不知道我有多少条记录时,如何显示分页。当然发现不可能在得到 N 个之前对项目进行排序。
可以通过http://localhost:8080/auth/admin/realms/users/count
获取用户总数。以上是关于keycloak rest api查询是不是有Not条件的主要内容,如果未能解决你的问题,请参考以下文章
哪些角色允许 Keycloak 领域中的用户使用 Admin-REST-API?
Keycloak :REST API 调用通过管理员用户名和密码获取用户的访问令牌