有没有人为 Keycloak 制作了导入功能?

Posted

技术标签:

【中文标题】有没有人为 Keycloak 制作了导入功能?【英文标题】:Has anyone made import functionality to Keycloak? 【发布时间】:2015-11-22 23:54:41 【问题描述】:

我们需要将数百个用户从 csv 文件导入 Keycloak。我还没有找到任何现成的导入功能来做到这一点。

有没有人做过任何导入例程或至少有一些骨架可以构建? REST API 可能是唯一的方法 - 还是有其他方法?

【问题讨论】:

你成功了吗? 我们还没有这样做,但似乎我们必须编写一些代码来进行导入。 Keycloak 周围没有多少社区。​​span> 【参考方案1】:

我最近在 Java 中构建了类似的东西。您可以使用 REST Api,但也有 admin-client。请参阅Programmatically adding users in Keycloak 获取一些提示。使用例如添加CSV支持应该是微不足道的。 Apache Commons CSV.

基本上你可以添加一个 Maven 依赖:

<dependency>
  <groupId>org.keycloak</groupId>
  <artifactId>keycloak-admin-client</artifactId>
  <version>1.4.0.Final</version>
</dependency>

并像这样使用它:

Keycloak kc = Keycloak.getInstance(
  "http://localhost:8080/auth", 
  "master", // the realm to log in to
  "admin", "password",  // the user
  "security-admin-console");

CredentialRepresentation credential = new CredentialRepresentation();
credential.setType(CredentialRepresentation.PASSWORD);
credential.setValue("test123");
UserRepresentation user = new UserRepresentation();
user.setUsername("testuser");
user.setFirstName("Test");
user.setLastName("User");
user.setCredentials(Arrays.asList(credential));
kc.realm("master").users().create(user);

【讨论】:

太棒了!这似乎正是我正在寻找的。我试试看。

以上是关于有没有人为 Keycloak 制作了导入功能?的主要内容,如果未能解决你的问题,请参考以下文章

Keycloak OpenID 连接 - Github

Keycloak Spring 启动配置

Keycloak NGINX 反向代理问题

Keycloak 无法使用有效令牌验证用户信息

如何从外部 IDP 读取/导入角色到 Keycloak

如何在 Keycloak 身份验证之前调用 javax.servlet.Filter