zoukankan      html  css  js  c++  java
  • 脚本自动创建ldap账号

    背景:客服那边人员流动性大,经常需要配置账号,每次创建账号配置权限比较繁琐。

    配置脚本:

    ldapadduser.sh

    #!/bin/bash
    # add ldap user
    if [ $# -ne 3 ]  ||  [[ $2 -ne "cn"  ||  $2 -ne "eu"  ]] || [[ $3 -ne "dev"  ||  $2 -ne "cs"  ]];then
       echo "Usage: /bin/bash $0 username [cn|eu] [dev|cs] ." && exit 1
    fi
    
    mail_address="xxxxx.com"
    
    if [ $2 == "eu" ];then
        mail_address="xxxxx.com"
    fi
    
    cat > add_user.ldif << EOF
    dn: cn=$1@$mail_address,ou=People,dc=ldap,dc=xxxx,dc=net
    objectClass: inetOrgPerson
    objectClass: top
    mail: $1@$mail_address
    sn: $1
    cn: $1@$mail_address
    userPassword: $1@$mail_address
    EOF
    
    if [ $3 == "cs" ];then
    cat >add_group.ldif<<EOF
    dn: cn=confluence-users,ou=confluence,dc=ldap,dc=xxxx,dc=net
    changetype: modify
    add: uniqueMember
    uniqueMember: cn=$1@$mail_address,ou=People,dc=ldap,dc=xxxx,dc=net
    #add: 添加的属性 ,uniqueMember: cn... 添加的属性值 视个人情况更改 dn: cn
    =customer service team,ou=confluence,dc=ldap,dc=xxxx,dc=net changetype: modify add: uniqueMember uniqueMember: cn=$1@$mail_address,ou=People,dc=ldap,dc=xxxx,dc=net dn: cn=jira-software-users,ou=jira,dc=ldap,dc=xxxx,dc=net changetype: modify add: uniqueMember uniqueMember: cn=$1@$mail_address,ou=People,dc=ldap,dc=xxxx,dc=net EOF elif [ $3 == "dev" ];then cat >add_group.ldif<<EOF dn: cn=confluence-users,ou=confluence,dc=ldap,dc=xxxx,dc=net changetype: modify add: uniqueMember uniqueMember: cn=$1@$mail_address,ou=People,dc=ldap,dc=xxxx,dc=net dn: cn=developer,ou=confluence,dc=ldap,dc=xxxx,dc=net changetype: modify add: uniqueMember uniqueMember: cn=$1@$mail_address,ou=People,dc=ldap,dc=xxxx,dc=net dn: cn=harbor-dev-developer,ou=harbor,dc=ldap,dc=xxxx,dc=net changetype: modify add: member member: cn=$1@$mail_address,ou=People,dc=ldap,dc=xxxx,dc=net dn: cn=jenkins-dev-build,ou=jenkins,dc=ldap,dc=xxxx,dc=net changetype: modify add: uniqueMember uniqueMember: cn=$1@$mail_address,ou=People,dc=ldap,dc=xxxx,dc=net dn: cn=kibana-software-users,ou=kibana,dc=ldap,dc=xxxx,dc=net changetype: modify add: uniqueMember uniqueMember: cn=$1@$mail_address,ou=People,dc=ldap,dc=xxxx,dc=net dn: cn=rabbitmq-dev-management,ou=rabbitmq,dc=ldap,dc=xxxx,dc=net changetype: modify add: uniqueMember uniqueMember: cn=$1@$mail_address,ou=People,dc=ldap,dc=xxxx,dc=net dn: cn=jira-software-users,ou=jira,dc=ldap,dc=xxxx,dc=net changetype: modify add: uniqueMember uniqueMember: cn=$1@$mail_address,ou=People,dc=ldap,dc=xxxx,dc=net EOF fi #echo "######请输入ldap管理员密码#####" echo "#####创建用户#####" /usr/bin/ldapadd -D cn=Manager,dc=ldap,dc=xxxx,dc=net -y .ldappasswd -x -f add_user.ldif echo "#####配置权限组#####" /usr/bin/ldapadd -D cn=Manager,dc=ldap,dc=xxxx,dc=net -y .ldappasswd -x -f add_group.ldif if [ $? -eq 0 ];then echo "添加用户成功" else echo "添加用户失败" fi
    printf "ldapadminpassword" >./.ldappasswd       
    chmod 400 ./.ldappasswd

    #dev为开发人员,cs为客服人员  分别配置不同的权限

    #cn为国内同事,eu为欧洲同事,使用邮箱不一样 所以需要区分下

    脚本执行示例:

    sh ldapadduser.sh test01 cn cs

    添加完成后去ldap管理页面查看用户是否添加成功及相应的权限是否配置正确。

    赠人玫瑰,手有余香,如果我的文章有幸能够帮到你,麻烦帮忙点下右下角的推荐,谢谢!

    作者: imcati

    出处: https://www.cnblogs.com/imcati/>

    本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出, 原文链接

  • 相关阅读:
    【娱乐向】制作Chrome天气预报扩展程序
    WCF入门四[WCF的通信模式]
    WCF入门三[WCF宿主]
    WCF入门二[WCF的配置文件]
    WCF入门一[WCF概述]
    通过Aspose.Word和ZXING生成复杂的WORD表格
    Dapper.Extension的基本使用
    startUML常用的组合片段
    Sublime Text 2 配置及其使用
    计算机领域会议汇总
  • 原文地址:https://www.cnblogs.com/imcati/p/11293692.html
Copyright © 2011-2022 走看看