精华内容
下载资源
问答
  • LDAP账户验证

    千次阅读 2018-02-22 15:44:40
    LDAP 最近使用一个 LDAP 来验证用户,初步发现了一些技巧,特此记录一下。 基础概念 先来了解一下每一层目录的说明 import javax.naming.Context; import javax.naming.directory.DirContext; import ...

    LDAP

    最近使用一个 LDAP 来验证用户,初步发现了一些技巧,特此记录一下。

    基础概念

    先来了解一下每一层目录的说明

    import javax.naming.Context;
    import javax.naming.directory.DirContext;
    import javax.naming.directory.InitialDirContext;
    import java.util.Hashtable;
    
    
    public class Test {
    
        public static void main(String[] args) {
            try {
    
                Hashtable<String, String> env = new Hashtable<String, String>();
                env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");
                env.put(Context.PROVIDER_URL, "ldap://ladpServerAddr:389/");
    
                env.put(Context.SECURITY_AUTHENTICATION, "simple");
                //这里的填写是倒序的,从最底层的验证用户开始写到顶层
                env.put(Context.SECURITY_PRINCIPAL, "cn=0002,cn=ldaptest,ou=users,o=test");
                env.put(Context.SECURITY_CREDENTIALS, "123456");
                DirContext dc = new InitialDirContext(env);
                dc.close();
                //没跑出异常就算是验证成功
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }

    文章出自 http://blog.wordty.cn

    展开全文
  • 但是使用用户的邮箱登录的时候就会报账户信息不合法。 docker log相关容器的到的日志如下 <p><code>172.17.0.1 - - [07/Aug/2020:12:03:09 +0000] "GET /login HTTP/1.1" 200 2484 "...
  • ldap账户密码自助修改

    千次阅读 2019-11-14 19:34:41
    安装依赖:yum install php70-ldap.x86_64 -y (版本尽量大于5.3,否则会提示更新php程序) yum install httpd -y yum install https://ltb-project.org/rpm/6Server/noarch/self-service-password-1.1-1.el...

    1.安装Self Service Password:

    安装依赖:yum install php70-ldap.x86_64 -y (版本尽量大于5.3,否则会提示更新php程序)

    yum install httpd -y

    yum install https://ltb-project.org/rpm/6Server/noarch/self-service-password-1.1-1.el6.noarch.rpm

    yum install -y sendmail

    配置apache: /etc/httpd/conf.d/self-service-password.conf

    2.Ldap配置:

    邮件配置(用户忘记密码的情况下,可通过邮箱重置密码):

    错误日志:/var/log/httpd/ssp_error_log,编辑config.inc.php开启debug模式查错,$debug = true;。

    3.可能遇到的问题:

    问题1:

    解决:修改配置: $keyphrase = "secret";   --->  $keyphrase = "ldapchangepasswd"; #任意字符串。

    问题2:

    PHP Parse error:  syntax error, unexpected '[' in phar:///usr/share/self-service-password/lib/vendor/defuse-crypto.phar/src/RuntimeTests.php on line 110, referer: http://xx.xx.xx.xx/index.php?action=sendtoken

    解决:将config.inc.php中$ crypt_tokens设置为false,确保问题与加密有关。

    展开全文
  • 需求: 用户密码即将到期,邮件提醒更改密码 用户密码过期,直接强制...以下操作均在ldap服务器上进行 #!/bin/bash if [ ! -d /tmp/ldap ];then mkdir /tmp/ldap fi if [ $(date +%k) = 10 ];then rm -rf /tmp/...

    需求:
    用户密码即将到期,邮件提醒更改密码
    用户密码过期,直接强制修改随机12位密码,并发送到用户邮箱
    用户被锁,直接强制修改随机12位密码,并发送到用户邮箱

    以下操作均在ldap服务器上进行

    #!/bin/bash
    
    if [ ! -d /tmp/ldap ];then
    mkdir /tmp/ldap
    fi
    if [ $(date +%k) = 10 ];then
       rm -rf /tmp/ldap/*
    fi
    systemctl status postfix > /dev/null
    if [ $? != 0 ];then
            systemctl start postfix
    fi
    
    #生成随机密码
    password=$(head -c 100 /dev/urandom | tr -dc 'a-z0-9A-Z' |head -c 12)
    #一天基数
    second=86400
    #密码最长有效期天数
    pwdMax=`expr $(ldapsearch -x -LLL -b cn=default,ou=pwpolicies,dc=kangbao,dc=com  -H ldap://127.0.0.1|awk '/^pwdMaxAge/{print $2}') / $second`
    pwdMin=`expr $(ldapsearch -x -LLL -b cn=default,ou=pwpolicies,dc=kangbao,dc=com  -H ldap://127.0.0.1|awk '/^pwdMinAge/{print $2}') / $second`
    #密码过期前警告天数
    pwdWarning=`expr $(ldapsearch -x -LLL -b cn=default,ou=pwpolicies,dc=kangbao,dc=com  -H ldap://127.0.0.1|awk '/^pwdExpireWarning/{print $2}') / $second`
    
    #用户列表
    uid=`slapcat |grep People| grep dn |awk -F'=' 'NF==5{print $2}' | sed 's/...$//'`
    
    #密码被锁检查
    locked () {
    for i in $uid;do
       ldapsearch -x -LLL -b cn="$i",ou=people,dc=kangbao,dc=com + -H ldap://127.0.0.1 | grep pwdAccountLockedTime > /dev/null
       if [ $? = 0 ];then
          if [ ! -f /tmp/ldap/pwdAccountLockedTime.$i ];then
             echo $i >> /tmp/ldap/pwdsuoding
             passw
             mail -r devops@kangbao.com -s "PTID系统账户异常---被锁定" -c   $i@pkangbao.com < /dev/null
    #         echo 1 >> /tmp/ldap/pwdAccountLockedTime.$i
          fi
       fi
    done
    }
    ##### 密码输入错误检测 #####
    failpasswd () {
    for i in $uid;do
       ldapsearch -x -LLL -b cn="$i",ou=people,dc=kangbao,dc=com + -H ldap://127.0.0.1 | grep pwdFailureTime > /dev/null
       if [ $? = 0 ];then
          pwd=`ldapsearch -x -LLL -b cn="$i",ou=people,dc=kangbao,dc=com + -H ldap://127.0.0.1 | grep pwdFailureTime | tail -1 |awk '{print $2}' | sed  -r 's/(........).*/\1/g'`
          if [ "$(date +%Y%m%d)" = "$pwd" ];then
             if [ ! -f /tmp/ldap/pwdFailureTime.$i ];then
                echo 1 >> /tmp/ldap/pwdFailureTime.$i
             fi
          fi
       fi
    done
    }
    ##### 密码到期检测 ######################
    work () {
    for i in $uid;do
       ldapsearch -x -LLL -b cn="$i",ou=people,dc=kangbao,dc=com + -H ldap://127.0.0.1 | grep pwdChangedTime > /dev/null
       if [ $? = 0 ];then
          ctime=`ldapsearch -x -LLL -b cn="$i",ou=people,dc=kangbao,dc=com + -H ldap://127.0.0.1|awk '/pwdChangedTime/{print $2}'|sed -r 's/(........).*/\1/g'`
       else
          ctime=`ldapsearch -x -LLL -b cn="$i",ou=people,dc=kangbao,dc=com + -H ldap://127.0.0.1|awk '/createTime/{print $2}'|sed -r 's/(........).*/\1/g'`
       fi
       #密码已使用天数
       utime=$((($(date +%s -d $(date $date +"%Y%m%d")) - $(date +%s -d "$ctime"))/86400))
       #密码剩余天数
       ltime=`expr $pwdMin - $utime`
       if [ "$ltime" -le 0 ];then
          echo $i >> /tmp/ldap/pwddaoqi
          passw
          echo "您的LDAP账户"$i"密码即将过期,过期后将无法登陆"$list"等等平台,密码修改地址:http://passwd.kangbao.com/,密码至少12位,且必须有两个大写字母" | mail -r devops@kangbao.com -s "PTID系统账户异常---密码已过期" -c $i@kangbao.com < /dev/null
       elif [ "$ltime" -gt 0 -a "$ltime" -le "$pwdWarning" ];then
             echo $i >> /tmp/ldap/pwdjijiangdaoqi
             echo "您的LDAP账户"$i"密码即将过期,过期后将无法登陆"$list"等等平台,密码修改地址:http://passwd.kangbao.com/,密码至少12位,且必须有两个大写字母" | mail -r devops@kangbao.com -s "PTID系统账户异常---还有"$ltime"天过期,请及时修改密码" -c $i@kangbao.com
       fi
    done
    }
    
    passw () {
    /usr/bin/expect <<-EOF
       set timeout 10
       spawn ldappasswd -x -D "cn=ldap,dc=kangbao,dc=com" -w admin@123 -h 127.0.0.1  "cn=$i,ou=people,dc=kangbao,dc=com" -S
       expect {
                "New password" { send "$password\r"; exp_continue }
                "Re-enter new password:" { send "$password\r" }
             }
                expect eof
    EOF
    
    }
    #if [ "$(date +%H)" = 10 ];then
       work
       locked
    #else
       failpasswd
    #fi
    
    
    展开全文
  • twiki配置ldap账户认证

    千次阅读 2013-10-10 18:58:17
    仅完成账户登录认证功能,其他高级功能未涉及。 准备工作:  1,twiki能够正常访问  2,安装Ldap相关的plugin包,可在extension处直接安装,或者去twiki.org下载zip包  ...

    应该是网上第一篇中文写的较详细的介绍,因为在配置过程中未找到相关中文资料。

    仅完成账户登录认证功能,其他高级功能未涉及。

    准备工作:

       1,twiki能够正常访问

       2,安装Ldap相关的plugin包,可在extension处直接安装,或者去twiki.org下载zip包

             http://twiki.org/cgi-bin/view/Plugins/SearchByTags?tag=ldap

    安装ldap plugin

       1,这里安装的zip包,LdapContrib.zip, LdapNgPlugin.zip,LdapPlugin.zip,NewUserPlugin.zip,解压在twiki安装路径就好了。

    配置

       1,Security setup 选择,图表来自网络

    Authentication LoginManager TWiki::LoginManager::TemplateLogin
    User Mapping UserMappingManager TWiki::Users::LdapUserMapping
    Passwords PasswordManager TWiki::Users::LdapUser
        2,

    Ldap Host ldap.mydomain.com ldap的host,用实际的ldap server
    Ldap Post 389 Ldap server port number
    Ldap Version 3 Ldap version. Should only be changed if an older version of Ldap is used.
    Ldap Base dc=mydomain,dc=com ldap的base
    Ldap BindDN CN=yourname,DC=mydomain,DC=coml
    可以访问ldap server的用户
    Ldap Bindpassword password 对应上面账户的用户密码

    3,接下来配了这几行

    Ldap UserBase dc=mydomain,dc=com  
    Ldap LoginFilter objectClass=user 这个看ldap的配置了,使用相应的名字
    Ldap LoginAttribute cn  
    Ldap WikiNameAttribute name  

    4,group没设,

       需要删空,不能留个无效的group

    5,在终端运行

    cd <twiki-install-path>/bin && ./view refreshldap=on Main/WebHome >/dev/null

    chown -R apache.apache <twiki-install-path>/working

    6,应该就可以用ldap的账户密码登陆了

    7,为了拿到更新后的ldap账户密码需要设置一个定时任务

    5 0 * * * cd <twiki-install-path>/bin && ./view refreshldap=on Main/WebHome >/dev/null


    8,Done











    展开全文
  • 什么是 LDAPLDAP 的全称是 Lightweight Directory Access Protocol,「轻量目录访问协议」。划重点,LDAP 「是一个协议」,约定了 Client 与 Server 之间的信息交互格式、使用的端口号、认证方式等内容。而 「LDAP...
  • 与钉钉的组织架构进行集成,可以想到的方法有如下:采用钉钉的身份验证方式,集成到jira、confluence、gitlab等的验证体系中,这个可能涉及到多个应用系统的修改 - 后面可以验证下同步钉钉的组织架构到本地的ldap,...
  • twiki中配置ldap账户认证

    千次阅读 2013-11-10 19:05:49
    出于好奇,我试着搭建了twiki,发现不是很麻烦,而且几乎接近绿色(全部文件都在/var/www/twiki中,除了需要安装apache和perl一些模块之外)。 参考:...原文在这里,中间如果发现找不到Ldap
  • 文档编写目的Cloudera从CM6.3版本开始,引入了Red Hat IdM来做整个集群的认证,Red Hat IdM对应的软件为Free...本文主要介绍如何在CDP-DC中对Hue组件集成FreeIPA的LDAP认证。内容概述1) 测试环境描述2) Hue集成Fre...
  • php修改LDAP账户密码

    2012-08-19 21:11:48
     Reset LDAP Password   type= "text/css" >  dt{   font-weight: bold;  }          /*   *PHP写的修改LDAP密码的小页面,要先通过用户cn获取到dn,然后通过dn修改用户的密码。 */     if (isset...
  • 内容概述1) 测试环境描述2) FreeIPA的LDAP介绍3) Atlas集成LDAP4) Atlas集成验证5) 总结 测试环境1) RedHat7.72) CM和Cloudera Runtime版本为7.1.13) FreeIPA版本为4.6.6 前置条件1) FreeIPA已安装且正常使用2) CDP...
  • 每一个主机上的gitlab服务都共用Redis和Postgresql,因此可以保证账户,密码和配置数据的一致,但是gitlab还有repositories数据是存放在/var/opt/gitlab/git-data文件夹下的,也就是宿主机的数据卷/root/git-data中,...
  • 基于LDAP数据库的用户和组实现 OpenLDAP是一个开源LDAP的数据库,可以通过phpLDAPadmin等管理工具或相关接口方便地添加用户和修改用户组。HDFS通过配置org.apache.hadoop.security.LdapGroupsMapping来使用 LDAP ...
  • 前言在Hadoop生态中,典型的鉴权方案:1、LDAP+Kerberos+Sentry主要应用在CDH平台,支持 Hive、Impala、HDFS 等主流组件,不支持 Hbase、Yarn、Kafka、Storm等常见组件。2、LDAP+Kerberos+Ranger主要应用在Apache ...
  • 本篇介绍spring security 和ldap 的集成,ldap是一个统一认证服务:在这个服务上可以新增部门和用户,新增用户后用户登录后端系统,前端渲染左侧tab页面,提供页面访问权限控制,后端使用过滤器实现按钮级别控制....
  • 导读:这些快速参考指南让系统管理员的生活和日常工作变得更轻松,而且它们都是免费提供的。 本文字数:3199,阅读时长大约:5分钟https://linux.cn/article-12490-1.html作者:Seth Kenlon译者:Xingyu....除非...
  • 关于GitOps的介绍,可以参考 GitOps:Kubernetes多集群环境下的高效CICD实践1. 在 容器服务控制台 创建kubernetes集群1.1 新建Kubernetes集群:1.2 新建命名空间gitops我们将会把gitlab和jenkins全部部署到此命名空间...
  • 据铅笔道昨日上午报道,上海一家科技公司的后端工程师张中南在半年前发现,由于阿里云代码托管平台的项目权限设置存在歧义,导致开发者操作失误,造成至少40家以上企业的200多个项目代码泄露,其中涉及到万科集团、...
  • LDAP网络账户

    2017-05-03 12:32:52
    LDAP网络账户 一、用户认证--客户端 1.更改yum源指向 [root@server9 ~]# cat/etc/yum.repos.d/rhel_dvd.repo # Created by cloud-init on Thu, 10 Jul 201422:19:11 +0000 [rhel_dvd] gpgcheck = 0 enabled ...
  • LDAP 网络用户账户

    2017-05-01 20:31:11
    LDAP网络用户账户
  • LDAP网络用户账户

    2017-05-02 21:38:32
    第八单元 LDAP 网络用户账户 使用 LDAP 服务器进行网络身份验证 • 在本课程中 ,到目前为止 ,我们已经介绍了通过每台计算机上的本地文件 ( 例如 /etc/passwd )管理的本地用户账户。但是 ,在多个系统上将...
  • 以前用过一个模块来调用认证域帐号的,后来发现引用代码太多,因为只是为了做帐号密码认证,不做其他任何查询什么的,所以干脆拔代码自己精简下,下面的代码只是利用了输入正确的帐号密码创建ldap连接来判断密码是否...
  • unit8 LDAP网络用户账户

    2016-11-16 23:17:13
    unit8 LDAP网络用户账户1.什么是ldapldap目录服务认证,和windows活动目录类似,就是记录数据的一种方式2.ldap客户端必须软件yum sssd krb5-workstation -y3.如何开启ldap用户认证authconfig-tui出现上图时因为tls...

空空如也

空空如也

1 2 3 4 5 ... 19
收藏数 368
精华内容 147
关键字:

ldap账户