Newer
Older
ldap / src / ldap-showuser.sh
#!/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}