我正在尝试使用 keyClaok 进行 SSO。我在keycloak中设置了mysql而不是嵌入式h2数据库。
但是,有一个问题。在udemy的讲座上,讲师告诉我们不建议直接处理db-table(由keycloak创建)。
如果业务需要应用程序处理用户的多个属性(如修改用户的部门、职位、年龄、profile_img),如何使用keycloak中的数据库来开发此需求?
如果我选择使用 keycloak,我是否应该考虑这一点 数据库(哪个应用程序使用)和另一个数据库(哪个keycloak使用)分开吗?这意味着 USER-DOMAIN 与其他域隔离
最佳答案
你有两个选择。如果数据量不大,且结构简单,可以直接使用Keycloak中的user属性。它就像附加到每个用户的数据 map 。另一种解决方案是将数据保存在您自己的存储库中,并实现一个自定义的 UserStorageProvider 来查询数据库以获取用户(包括额外的属性)。 Keycloak 文档已经有 an example of this provider .
关于database - 是否可以自定义keycloak使用的user_entity表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72539494/