#!/bin/bash ######################################################################## ## Script : ldap-showuser:.sh ## Name : LDAP に登録されているユーザーを表示します。 ## Version : 0.0.1 ## Copyright : 2019 Nomura Kei ## License : BSD-2-Clause ## Usage: ## |使用法) ldap-showuser.sh [オプション] uid ## | ## | LDAPに登録されているユーザーを表示します。 ## | ## |uid ## | ユーザーIDを指定します。 ## | ## |[オプション] ## | --password 管理者パスワードを指定します。 ## | -h,--help 使用法を表示します。 ## | -v,--version バージョンを表示します。 ## | ## | ## ######################################################################## SCRIPT_FILE=${0} SCRIPT_DIR=`dirname ${SCRIPT_FILE}` LIB_DIR=${SCRIPT_DIR}/../lib ######################################################################## ## ## ライブラリのロード ## [ -f "${LIB_DIR}/functions.sh" ] && . ${LIB_DIR}/bash-utils.sh [ -f "${SCRIPT_DIR}/ldap-util.sh" ] && . ${SCRIPT_DIR}/ldap-util.sh ######################################################################## ## ## デフォルト値 ## DOMAIN_DN=`getDomainDN` ROOT_DN=`getRootDN` ROOT_PW= ######################################################################## ## ## 関数群 ## ######################################################################## ## ## メイン処理 ## for OPT in "$@"; do case "${OPT}" in '--passwd') ROOT_PW="$2"; shift 2 ;; '-h'|'--help') usage; exit 1 ;; '-v'|'--version') version; exit 1 ;; -*) usage exit 1 ;; *) if [[ ! -z "$1" ]] && [[ ! "$1" =~ ^-+ ]]; then P_UID=("$1") shift 1 fi ;; esac done # ---------------------------------------------------------------------- # 引数整理 # ---------------------------------------------------------------------- [ "${ROOT_PW}" = "" ] && read -s -p "Root Password > " ROOT_PW; echo "" # ---------------------------------------------------------------------- # 結果出力 # ---------------------------------------------------------------------- USER_DN="ou=User,${DOMAIN_DN}" if [ "${P_UID}" = "" ]; then SEARCH= else SEARCH="(uid=${P_UID})" fi ldapsearch -D ${ROOT_DN} -b ${USER_DN} -w ${ROOT_PW} ${SEARCH}