无论用户信息是否储存在目录服务中或 XML 文件中,OpenPTK 都允许开发人员为用户置备提供统一的 API。 通过使用 OpenPTK,开发人员将不必深入到每个用户信息存储库,而是集中利用API 定义完善的集合以便与已知几种用户存储库的用户置备框架进行交互。此后,如果所要求的用户存储不被 OpenPTK 支持,开发人员可以实现所要求的接口集合以便为框架提供与新用户存储库通信的通道。 除了利用像修改密码、重置密码和密码恢复此类密码管理功能之外,通过使用 OpenPTK,开发人员可以在用户存储库上执行 CRUD 操作。OpenPTK 的当前版本支持作为用户信息存储库的 LDAP (SPML)、 JDBC 和 Sun Identity Manager。
OpenPTK 为框架用户提供一些前端设备,以便轻松访问引导与用户存储库交互的框架功能。当前所提供的前端包括 JSR-168 portlet、JAX-RPS Web 服务端点和 JSP 标记库,除此之外还包括为框架直接交互的 API。
OpenPTK 架构
正如前面所述, OpenPTK 具备完善的架构,且具有易于扩展和易于定制的基类和接口;从开发人员的角度来看,OpenPTK 项目的目标是统一用户置备并使用用户信息存储库处理各种交互机制。以下是来自 OpenPTK 的三个顺序层:
OpenPTK 使用层
OpenPTK 服务层
OpenPTK 核心框架
位于使用层的各个组件的目的是减轻针对不同应用程序和客户机对框架功能的访问。位于该层的各个组件不会实现特定接口或遵循由框架定义的一些规则;相 反,在不涉及所提供的 Java API 的情况下, 设计并实现它们旨在减少需要与 OpenPTK 核心框架交互的不同应用程序的开发。
项目主页:http://www.openptk.org/
来自:开源中国社区

