keycloak,用户注册。如何添加角色?

Joh*_*ohn 5 keycloak

我有一个由 keycloak 保护的应用程序。转到安全页面会显示一个 keycloak 登录页面,正确的用户/密码会提供预期的结果。

在客户端内,我已开启用户注册。所以现在登录页面显示了一个注册链接,它显示了另一个 keycloak 页面,允许用户使用姓名、用户名、电子邮件进行注册。

这“有效”,因为用户被添加到 keycloak 用户数据库中。但应用程序显示错误页面,因为角色未映射到 keycloak 中的该用户。

我想要发生的是能够将新用户添加到应用程序自己的用户数据库中,将角色与用户关联,或者对用户进行一些验证。

所以我真的不知道什么 keycloak 发送回应用程序,除了它最终导致 /error。有没有办法在新注册后告诉 keycloak 联系这个 url 应用程序中可能发生的事情?

try*_*arn 7

我遇到了类似的情况,我解决的方法是为新添加的用户启用默认角色。稍后可以更改此角色,但使用默认角色后,您的流程将完成。

有两种方法可以在 keycloak 中分配默认角色。使用这两个配置,每当新用户从外部服务提供商注册时,他们都会被分配这个默认角色:

  1. 直接为用户分配默认角色:

在此处输入图片说明

  1. 为用户分配一个默认组并将角色映射到该默认组

在此处输入图片说明

在此处输入图片说明

请注意,上面的默认组角色名称是我自己的,它们不是在 keycloak 中预定义的。

  • 是的,我考虑过这一点,这是个好主意。但我仍然想要一种获得注册后重定向到客户端应用程序中的特定端点的方法。例如,然后我也可以将新注册的应用程序数据库添加到应用程序数据库中。或者我可以将该用户引导到一个新的用户页面,该页面可能会验证电子邮件地址,并且在这种情况发生之前不允许访问。可能的一种方法是拥有一个特殊的新用户角色?但即便如此,注册后重定向到已知端点也是有用的。 (2认同)