我们正在构建一个面向企业的 Web 应用程序;并且需要为我们 Web 应用程序的所有企业用户维护一个最新的用户数据存储库。我们非常清楚如何实现联合身份验证 - 但是我们还需要维护一个关于用户的元数据本地存储库(例如部门、职位、级别等),并了解用户的生命周期(即是否有人离开了公司等),即我们需要解决配置问题。
确保我们可以将用户存储库与随意的公司存储库(例如,通常是 LDAP,如 AD 或类似的)?
我们考虑了几种方法:
- 从我们的 Web 应用程序中设置 LDAP 查询“拉取”;定期轮询用户数据。显然,这可能会造成大量不必要的数据混乱(当没有任何变化时),需要公司外部(互联网)公开的 LDAP 服务器,这在安全方面并不理想。
- 要求我们的客户在他们的 LDAP 服务器上设置 LDAP 同步引擎(例如安装一个将更改推送给我们的代理)——这并不理想,因为它需要自定义安装的组件和维护
- 构建对通用(?)协议的支持,以便为用户提供信息并与某些企业身份管理解决方案(例如 SCIM、SPML)相结合。目前实际使用的是什么?
有什么建议/最佳实践吗?