Bundles实现 LDAP操作 AD 域

一 . LDAP 和 AD 背景介绍

LDAP 是 一个 轻量目录协议 ,全名 Lightweight Directory Access Protocol , 他用于发布目录信息到许多不同资源的协议 , LDAP 类似于一个集中的地址本 ,类似于一个 电话簿 。

在整个开发中 ,有以下关键的元素 :

AD 里面每个对象都有一个唯一的DN路径 ,我们来看这样一条路径

CN=user-ant,ou=武汉区研发中心,dc=paraview,dc=com,dc=cn

 > cn  common Name: 姓名
 > ou  organizational Unit Name: 单位(部门)名称 ,所属组织 
 > dc :  一条记录所属区域 ( 哪一棵树 ) ,域名组件 ,在最顶层

(dc是一个域名 ,一颗数 ,树下有很多 ou 组织 ,组织下拥有 cn )

dc=paraview,dc=com,dc=cn  : 组成了我的域
ou : 标识我在域中的组织
dc : 我是哪个人

二 . 基本概念

  • Entry : 条目 ,记录项 ,是最基础的记录单元 (dn + rdn + Base DN)
  • Attribute :属性 ,每个条目都有属性 (名称-值)()
  • ObjectClass : 对象类是属性的集合,对象类有三种类型 ,结构类型(Structural)、抽象类型(Abstract)和辅助类型(Auxiliary)
  • Schema : 模式 ,对象类的集合

三 . bundles

bundle 是一种连接器 ,用于一个平台和多个类似与LDAP 的 复杂系统进行连接 ,实现了充分的解耦 。
从业务上说 ,平台无需耦合复杂的代码 ,通过调用连接器中通用的代码 ,实现操作对应系统的目的。

连接器通常分为 API 和 SPI 两个部分 ,外部业务调用API ,API 内部通过 SPI 对相关系统进行控制 。

连接器中通常有以下几种组成部分:

  • 连接器类 : Connector

|-> 实现连接器功能的主类
|-> 通常实现 Connector , PoolableConnector 接口 ,SPI 操作接口

  • 配置类 : Configuration

|-> 包含连接器配置变量的简单Java Bean
|-> 配置类由ConnId 框架 使用 Application 从 Application 资源定义的 connectorConfiguration 获取的一部分数据进行初始化

  • 操作类

|-> create : 该类用于创建对象 ,是具体的创建逻辑
|-> update : 包含具体的更新逻辑
|-> delete : 具体的删除逻辑

未完待续。。。。

你可能感兴趣的:(中间件,AD,Bundles)