#!/bin/bash SSH_USER=$1 LDAP_URI={{ ldap_server }}:{{ ldap_port }} GROUP_DN={{ base_group }} BASE_DN={{ base_passwd }} ldapFilter="(&(shadowInactive=0)(uid=${SSH_USER})(memberOf=cn=users,ou=groups,dc=dc1,dc=com)(sshPublicKey=*))" # Get "sshPublicKey": KEY=$(ldapsearch -x -LLL -o ldif-wrap=no -H "${LDAP_URI}" -b "${BASE_DN}" "${ldapFilter}" sshPublicKey | \ grep sshPublicKey | \ perl -MMIME::Base64 -wpe 's/^sshPublicKey(:{1,2}) (.+)$/$1 eq "::" ? decode_base64($2) : $2/e') echo "${KEY}" exit 0