密钥斗篷用户管理

Keycloak user management

我正在开发一个使用 kaycloak 作为 IAM 的微服务 (restful) 项目。我可以创建领域、客户端、用户...来进行身份验证,但我担心的是我应该只在 keycloak 上管理用户还是在我的微服务中创建我自己的用户 table?

is should I manage users only on keycloak or creating my own user table in my micro-service?

首先,您需要检查在用户管理方面,Keycloak 可以做什么(或不能做什么),并与您当前(以及未来可能)的要求进行比较。如果它不能完全满足您的要求,那么您可以扩展 Keycloak,调整您的要求,或者(可能是最直接的解决方案)在您的微服务中拥有自己的用户 table。

出于性能原因,您可能还想创建自己的用户 table。根据在您的设置中访问 Keycloak 的速度有多慢,您可以考虑使用该用户 table 作为快速访问用户相关信息的缓存机制。

拥有该用户 table 的问题在于,根据存储在 Keycloak 和用户 table 上的用户信息,您可能必须使它们保持同步。此外,如果该信息存在于用户 table 而不是 Keycloak 上,而您需要有关令牌的信息,您将不得不考虑如何处理这种情况。

就个人而言,我会尽量避免创建用户 table,除非确实有必要。因此,您问题的完整答案很可能高度依赖于您自己的需求。