Sign up flow when "must approve users" is configured

:information_source: See also: Configure Discourse for a closed or private community

A Discourse site may be configured to require that new users are approved before they can log in. This is most often used for private communities, but may also be used for public communities that simply wish to put limitations on who can join and participate in discussions.

Configuration

  1. Check the must_approve_users site setting so that users can “apply” to join the community
  2. (Optional) Check the login_required site setting if you want to ensure that your community is set to private. This will prevent anonymous users from viewing the content of your forum.

Signup flow

With the above configuration, here’s what the sign up flow looks like for a user joining your community:

  1. User visits the forum and presses the Sign Up button (Screenshot below illustrates login_required enabled).

  2. The user enters their account details and receives an activation e-mail in their inbox. After e-mail activation, they will see the following message on the forum:

    Welcome to Discourse!

    A moderator must manually approve your new account before you can access this forum. You’ll get an email when your account is approved!

    If they attempt to log in at this point they will see a message on the login modal that says:

    Your account hasn’t been approved yet. You will be notified by email when you are ready to log in.

  3. Moderators will be immediately notified of pending user approvals through on-site notifications notification. If the request remains in the review queue long enough without being addressed, a reminder email will be sent out to all users with full Moderator status. The reminder email background job (PendingUsersReminder) runs every hour, but will be delayed according the pending users reminder delay site setting.

  4. Once approved by a staff member, users get an e-mail that lets them know that they’ve been approved.

13 Likes

Hi!! I found where to edit this message (Welcome to Discourse!

A moderator must manually approve your new account before you can access this forum. You’ll get an email when your account is approved!)

https://discourse.example.com/admin/customize/site_texts/activation.approval_required

but I need to put a link on this message, and HTML (<a href…) seems not to work. In other messages it seems to work…

How can I put a hyperlink on this message?

Thank you so much!!

2 Likes

Hmm, I just checked and unfortunately that text does not support HTML or markdown. At the moment I think you are going to be limited to plain text.

3 Likes

Hi!! Still this text does not support HTML or markdown?..i mean nothing changed in recent releases? Would be nice to have the possibility to add some hyperlinks to this message…

I know it is 1 year late but still need an answer to this matter. Please @techAPJ or some other Discourse Tem member…any news regarding this?

1 Like

This doesn’t seem to be working for me. When I send an invite (which includes a group membership) I get the account creation link and after putting in the details I get an email with a link allowing me to activate the new account straightaway.
In my admin account I don’t get a notification to allow the user.

When the must approve users site setting is enabled, invites can only be sent from staff accounts. Any invite sent from a staff account is automatically pre-approved. This is why users that you invite are able to log into the site without having to be approved by a staff member.

Users who signup with a username/password will still need to be approved though.

5 Likes

Perhaps the invite dialog should indicate that fact in the text it displays to the staff member, so there is less confusion, and less future support we have to deal with here on Meta? :thinking:

@techAPJ can you add this to your list?

1 Like

Done via:

https://github.com/discourse/discourse/pull/11062

2 Likes

Hi thanks for the explanation a few questions:

  • what is the frequency for this email notification job? i dont see it at /sidekiq
  • does the notification also go to users in the administrator role?
  • is there a setting to make the notification come faster similar to like Watching|Tracking|Muted structure that exists with post notifications?

Thanks!

2 Likes

The job is called PendingUsersReminder and runs every hour, but can be delayed according the pending users reminder delay site setting.

Only if they also have the moderator role

There is not that I’m aware of. I think you would need to come up with a small plugin to override the hard-coded frequency in the PendingUsersReminder job.

These were good questions! I’ll be sure to integrate the answers into the OP.

2 Likes

For the Login process, is it possible to have both :

  1. Registrations from people invited by a trusted level to be automatically approved, and
  2. Other on site registrations (ie non-invited) needing approval by a moderator ?

I do not see how this is set up at the Settings/Login.

You can get close to what you are looking for by enabling the must approve users site setting and setting your min trust level to allow invite setting to “4: leader” to prevent regular users from sending invites.

Users who accept invites sent by staff members will be automatically approved. Users who register with a username/password will need to be approved by a staff member.

2 Likes

Thanks very much for the reply Simon. Much appreciated. I will use this info to work around what I want.

I am new to this, but am keen to grow our community quickly through invites from existing members, which I would have liked to have been pre-approved.

I would also have liked to have had the option that non-invited members would need to be approved by moderators.

It would seem to be a sensible way to grow a community, whilst trying to maintain its integrity.

Perhaps I could suggest this as a possible improvement for a future Discourse upgrade.

Thank you.

@tshenry
Hi,
I hope you are doing well, where can I find this particular portion “must approve users”?
I tried, however I am unable to find it, please forgive my little brain.

Thank You in advance.

Hello and welcome @Sayali.Wagh :slight_smile:

The best way to search for settings is to put a keyword (or the setting name if you know it) in the search bar of the admin settings page:

1 Like

Hi @JammyDodger

You are true Gem.
Thank you so much.
Please take a look at my discourse site https://community.pratah.news (empty right now).
Work is still in progress.

Thank you once again.
Sayali Wagh