Searches for a group and retrieve its members.

        :param page_size (optional): Many servers have a limit on the number of results that can be returned.
                                     Paged searches circumvent that limit. Adjust the page_size to be below the
                                     server's size limit. (default: 500)
        :type page_size: int

def _get_group_members(self, page_size=500):
        """ Searches for a group and retrieve its members.

        :param page_size (optional): Many servers have a limit on the number of results that can be returned.
                                     Paged searches circumvent that limit. Adjust the page_size to be below the
                                     server's size limit. (default: 500)
        :type page_size: int

        """

        entry_list = self.ldap_connection.extend.standard.paged_search(
            search_base=self.GROUP_MEMBER_SEARCH['base_dn'],
            search_filter=self.GROUP_MEMBER_SEARCH['filter_string'].format(group_dn=escape_query(self.group_dn)),
            search_scope=self.GROUP_MEMBER_SEARCH['scope'],
            attributes=self.GROUP_MEMBER_SEARCH['attribute_list'],
            paged_size=page_size
        )
        return [
            {"dn": result["dn"], "attributes": result["attributes"]}
            for result in entry_list if result["type"] == "searchResEntry"
        ]