java对Ldap操作1

时间:2023-03-08 18:02:25

package ldap;
java对Ldap操作1
java对Ldap操作1import java.util.List;
java对Ldap操作1
java对Ldap操作1import ldap.pojo.LdapPersonInfo;
java对Ldap操作1
java对Ldap操作1/**
java对Ldap操作1 * access Ldap
java对Ldap操作1 * 
java对Ldap操作1 * @author 张亮
java对Ldap操作1 */
java对Ldap操作1public interface UserDaoLdap {
java对Ldap操作1    /**
java对Ldap操作1     * 获得所有的用户名(ldap称cn),可根据第二个参数指定返回值是否重复
java对Ldap操作1
java对Ldap操作1     * 
java对Ldap操作1     * @param scope
java对Ldap操作1     *            取值为0、1、2,分别对应 SearchControls 类 OBJECT_SCOPE, ONELEVEL_SCOPE,
java对Ldap操作1     *            SUBTREE_SCOPE三个查询范围,分别代表 当前对象查询、当前节点下对象查询、当前节点所有子目录查询
java对Ldap操作1     * 
java对Ldap操作1     * @param distinct
java对Ldap操作1     *            true,去掉结构中的重复值;false 允许结果中包含重复值
java对Ldap操作1
java对Ldap操作1     * @return 查询范围下返回的cn列表
java对Ldap操作1     */
java对Ldap操作1    public List getAllPersonNames(int scope, boolean distinct);
java对Ldap操作1
java对Ldap操作1    /**
java对Ldap操作1     * 查询指定范围下的所有用户信息
java对Ldap操作1
java对Ldap操作1     * 
java对Ldap操作1     * @param scope
java对Ldap操作1     *            取值为0、1、2,分别对应 SearchControls 类 OBJECT_SCOPE, ONELEVEL_SCOPE,
java对Ldap操作1     *            SUBTREE_SCOPE三个查询范围,分别代表 当前对象查询、当前节点下对象查询、当前节点所有子目录查询
java对Ldap操作1     * 
java对Ldap操作1     * @return 查询范围下返回的所有用户信息列表
java对Ldap操作1
java对Ldap操作1     */
java对Ldap操作1    public List getAllPersons(int scope);
java对Ldap操作1
java对Ldap操作1    /**
java对Ldap操作1     * 根据Uid查询用户信息,*代表任意长度的任意字符
java对Ldap操作1
java对Ldap操作1     * 
java对Ldap操作1     * @param uid
java对Ldap操作1     *            用户的uid
java对Ldap操作1     * @param scope
java对Ldap操作1     *            取值为0、1、2,分别对应 SearchControls 类 OBJECT_SCOPE, ONELEVEL_SCOPE,
java对Ldap操作1     *            SUBTREE_SCOPE三个查询范围,分别代表 当前对象查询、当前节点下对象查询、当前节点所有子目录查询
java对Ldap操作1     * 
java对Ldap操作1     * @return 用户信息
java对Ldap操作1     */
java对Ldap操作1    public List  getPersonByUid(String uid, int scope);
java对Ldap操作1
java对Ldap操作1    /**
java对Ldap操作1     * 查询包含当前Cn信息的所有用户,*代表任意长度的任意字符
java对Ldap操作1
java对Ldap操作1     * 
java对Ldap操作1     * @param cn
java对Ldap操作1     *            用户的cn
java对Ldap操作1     * @param scope
java对Ldap操作1     *            取值为0、1、2,分别对应 SearchControls 类 OBJECT_SCOPE, ONELEVEL_SCOPE,
java对Ldap操作1     *            SUBTREE_SCOPE三个查询范围,分别代表 当前对象查询、当前节点下对象查询、当前节点所有子目录查询
java对Ldap操作1     * 
java对Ldap操作1     * @return 用户列表
java对Ldap操作1     */
java对Ldap操作1    public List getPersonByCn(String cn, int scope);
java对Ldap操作1
java对Ldap操作1    /**
java对Ldap操作1     * 使用LdapPersonInfo类对象实现复合查询,属性中可使用通配符*,*代表任意长度的任意字符
java对Ldap操作1
java对Ldap操作1     * 
java对Ldap操作1     * @param ldapPersonInfo
java对Ldap操作1     *            查询条件
java对Ldap操作1     * @param scope
java对Ldap操作1     *            取值为0、1、2,分别对应 SearchControls 类 OBJECT_SCOPE, ONELEVEL_SCOPE,
java对Ldap操作1     *            SUBTREE_SCOPE三个查询范围,分别代表 当前对象查询、当前节点下对象查询、当前节点所有子目录查询
java对Ldap操作1     * 
java对Ldap操作1     * @return 用户列表
java对Ldap操作1     */
java对Ldap操作1    public List getPersonByPersonEnty(
java对Ldap操作1            LdapPersonInfo ldapPersonInfo, int scope);
java对Ldap操作1
java对Ldap操作1    /**
java对Ldap操作1     * 根据dn查找用户,dn为base dn 的相对dn.(若basedn为:dc=koal,dc=com,user
java对Ldap操作1     * dn为:uid=123,dc=koal,dc=com,则此处只需要提供 123 作为参数)
java对Ldap操作1     * 
java对Ldap操作1     * @param dn
java对Ldap操作1     *            相对base dn的dn参数
java对Ldap操作1     * @return 用户信息
java对Ldap操作1     */
java对Ldap操作1    public LdapPersonInfo getLdapObjectByDn(String dn);
java对Ldap操作1
java对Ldap操作1    /**
java对Ldap操作1     * 验证用户登陆
java对Ldap操作1     * 
java对Ldap操作1     * @param uid
java对Ldap操作1     *            用户uid
java对Ldap操作1     * @param password
java对Ldap操作1     *            用户密码
java对Ldap操作1     * 
java对Ldap操作1     * @return 是否登陆成功
java对Ldap操作1     */
java对Ldap操作1    public boolean userLogin(String uid, String password);
java对Ldap操作1
java对Ldap操作1    /**
java对Ldap操作1     * 查询用户user dn
java对Ldap操作1     * 
java对Ldap操作1     * @param uid
java对Ldap操作1     *            用户uid
java对Ldap操作1     * 
java对Ldap操作1     * @return 用户dn列表,当前目录节点下可能存在多个相同uid的多个user dn
java对Ldap操作1     */
java对Ldap操作1    public List getUserDnByUid(String uid);
java对Ldap操作1}