
AD 인증을 사용하는 특정 애플리케이션에 대한 액세스 권한을 부여받은 사용자는 약 10명입니다.
ldapsearch -p xxx -LLL -x -w test -h abc.com -D abc -b dc=abc,dc=com sAMAccountName=xyz | grep displayName
sAMAccountName
전체 사용자 목록(별도의 텍스트 파일)을 한 번에 참조할 수 있나요 ? 그렇지 않다면 이 명령을 스크립트에 넣고 사용자가 명령을 입력하여 sAMAccountName
AD에 존재하는지 확인할 수 있습니까?
이에 대한 어떤 생각이라도...
답변1
나는 이것을 명확하게 이해하지 못할 수도 있지만 스크립트에 넣으려면 아래와 같이 bash 스크립트를 작성하여 계정 이름을 묻는 메시지를 표시할 수 있습니다.
#!/bin/bash
echo -n "Please enter username to lookup: "
read USERNAME
DISPLAYNAME=`ldapsearch -p xxx -LLL -x -w test -h abc.com -D abc -b dc=abc,dc=com sAMAccountName=$USERNAME | grep displayName`
if [ -z "$DISPLAYNAME" ]; then
echo "No entry found for $USERNAME"
else
echo "Entry found for $USERNAME"
fi
답변2
스크립트는 모든 사용자 이름을 사용하여 적절한 LDAP 필터를 생성해야 합니다.
(|(sAMAccountName=foo)(sAMAccountName=bar)(sAMAccountName=baz))
예를 들어:
filter="(|"
while read -r name; do
filter+="(sAMAccountName=${name})"
done
filter+=")"
(| ... )
또는 LDAP에 있습니다. AND 연산자는 입니다 (& ... )
.