I'm creating a site that will require approval of new user registrations. The only option I see is Visitors can create accounts but administrator approval is required. For an active site this can make the administrator (user #1) a bottleneck. Is there any configuration or contrib that will give another role the permission to approve new user registration?

Comments

WorldFallz’s picture

Did you try the 'administer users' permission?

caschbre’s picture

I did try that option and the user was able to manage users. What I forgot to mention in my original post was that I'm looking for a solution that doesn't allow these other users the ability to modify the administrator (user #1) account. That could be dangerous.

scoutbaker’s picture

Add the User Protect module as well.

caschbre’s picture

I'll have to give that a shot.

Am I even going about this the right way? My basic idea is to have a role (user manager) that can handle all user management operations. It sounds like it would be easy to setup... but I'm not too crazy that user #1 is editable. I'll definitely check out that protection module.

UTAN_dev’s picture

Drupal sends all sorts of email to the single administrative email address defined at /admin/settings/site-information. I faced the same problem as you: I wanted new-user approval emails sent to a non-admin user. (We'll call her "Sandra".)

Since Drupal can't be told to send this type of admin email to this person, that type of admin email to that person, etc., I used GMail as a dispatcher. The Drupal site admin email address is a GMail account — all admin emails land there. GMail then forwards emails to the relevant person, based on its own Filters.

To have new-user approval emails sent to a different address than the site admin address defined at /admin/settings/site-information:

  • GMail: open a GMail account for the site, e.g. "example.com_admin@GMail.com" and go through the validation process.
  • Drupal: at /admin/settings/site-information, enter "example.com_admin@GMail.com" as the site email address.
  • At /admin/user/settings , select "Visitors can create accounts but administrator approval is required."
  • Register a new user account.
  • GMail: log into your account; click "Settings" (top right); in the gold box, click "Forwarding and POP/IMAP"
  • Click "Add a forwarding address" and enter Sandra's email. GMail will send a validation code to that address.
  • When the validation email arrives, copy the validation code and enter it in GMail's "Forwarding and POP/IMAP" tab. Sandra's email is now a GMail-approved forwarding address.
  • In the "Settings > Filters" tab, create the filter:
  • Step 1: "Choose search criteria" — enter the following:

    From: example.com_admin@GMail.com
    Subject: "(pending admin approval)" (including quotes)
    Has the words: "has applied for an account." (including quotes)
  • Click "Next Step".
  • Step 2: "Choose action"
  • You'll see the results of your filter in the second yellow box. Go "« Back" if it needs fine-tuning, otherwise:
    • Check "Forward it to:" and pick Sandra's email from the dropdown.
    • Check "Delete it".
    • Check "Also apply filter to n conversations below."
    • Click "Create Filter".
  • The filter will be created, and a confirmation of its initial action will appear.
  • Result: Sandra will receive the forwarded new-user confirmation email. It will disappear from your GMail inbox — the inbox should only contain emails meant for the site admin. (You can always check the "Sent Mail" folder to view forwarded emails.)

What if you want several people to receive a particular type of admin email?

GMail only forwards to one address per filter. If you want an incoming email to be forwarded to several addresses:

  • Use a private Google Group as the forwarding address in your GMail filter.
  • Add the various recipients as members of this group.
  • Set their Message Delivery frequency to "Individual emails".
balumba’s picture

an easy solution is to add the Rules module

Just create a new triggered rule that sends out an email to specified users or user roles (like "user management") when [action] a new user signs up.

hema_baskaran88@yahoo.com’s picture

i'm have create new account and submitted but no mail i received in admin side and also user dint receive any password to his mail.

mikedotexe’s picture

The Rules module looks like the right one, thank you.

Hakuna Matata

mayuri_02’s picture

Hi ,

in admin under account settings select Visiters option.

just create rule that will Block user once they register .

Virang’s picture

Hi @mayuri_02,

Thanks for your answer, it saved my time.