[GH-ISSUE #1874] Restrict Signups for specific domains in self-hosted / allow invites to sign-up when global signups is disabled #541

Open
opened 2026-02-26 18:47:30 +03:00 by kerem · 15 comments
Owner

Originally created by @ismxilxrif on GitHub (Jul 2, 2025).
Original GitHub issue: https://github.com/documenso/documenso/issues/1874

Feature Description

in self-hosted, we would like the option of limiting signups to only specific domains that only our organization can sign-up for it.

we tried disabling sign-ups altogether, however, invitations would break as it redirects them to the /signup page back.

Use Case

in self hosted environments, we want only users of our organization to be able to sign-up.

Proposed Solution

implement it by using environment variable, or by using the admin panel to allow list of allowed domains

Alternatives (optional)

No response

Additional Context

No response

Please check the boxes that apply to this feature request.

  • I have searched the existing feature requests to make sure this is not a duplicate.
  • I have provided a detailed description of the requested feature.
  • I have explained the use case or scenario for this feature.
  • I have included any relevant technical details or design suggestions.
  • I understand that this is a suggestion and that there is no guarantee of implementation.
  • I want to work on creating a PR for this issue if approved
Originally created by @ismxilxrif on GitHub (Jul 2, 2025). Original GitHub issue: https://github.com/documenso/documenso/issues/1874 ### Feature Description in self-hosted, we would like the option of limiting signups to only specific domains that only our organization can sign-up for it. we tried disabling sign-ups altogether, however, invitations would break as it redirects them to the /signup page back. ### Use Case in self hosted environments, we want only users of our organization to be able to sign-up. ### Proposed Solution implement it by using environment variable, or by using the admin panel to allow list of allowed domains ### Alternatives (optional) _No response_ ### Additional Context _No response_ ### Please check the boxes that apply to this feature request. - [x] I have searched the existing feature requests to make sure this is not a duplicate. - [x] I have provided a detailed description of the requested feature. - [x] I have explained the use case or scenario for this feature. - [x] I have included any relevant technical details or design suggestions. - [x] I understand that this is a suggestion and that there is no guarantee of implementation. - [ ] I want to work on creating a PR for this issue if approved
Author
Owner

@github-actions[bot] commented on GitHub (Jul 2, 2025):

Thank you for opening your first issue and for being a part of the open signing revolution!

One of our team members will review it and get back to you as soon as it possible 💚

Meanwhile, please feel free to hop into our community in Discord

<!-- gh-comment-id:3028128679 --> @github-actions[bot] commented on GitHub (Jul 2, 2025): Thank you for opening your first issue and for being a part of the open signing revolution! <br /> One of our team members will review it and get back to you as soon as it possible 💚 <br /> Meanwhile, please feel free to hop into our community in [Discord](https://documen.so/discord)
Author
Owner

@TSP-Dev commented on GitHub (Jul 3, 2025):

Could work via special invitation token as well

<!-- gh-comment-id:3030627279 --> @TSP-Dev commented on GitHub (Jul 3, 2025): Could work via special invitation token as well
Author
Owner

@ismxilxrif commented on GitHub (Jul 3, 2025):

@TSP-Dev when i invite people into an organization, it still requires them to signup on the /signup page

<!-- gh-comment-id:3031266187 --> @ismxilxrif commented on GitHub (Jul 3, 2025): @TSP-Dev when i invite people into an organization, it still requires them to signup on the /signup page
Author
Owner

@11jwolfe2 commented on GitHub (Jul 3, 2025):

I agree it would be great to disable public sign ups while still being able to invite users. Causes a back and fourth of deployment. Deploy with signups invite users. Turn off signups. Rinse and repeat as needed.

<!-- gh-comment-id:3032465262 --> @11jwolfe2 commented on GitHub (Jul 3, 2025): I agree it would be great to disable public sign ups while still being able to invite users. Causes a back and fourth of deployment. Deploy with signups invite users. Turn off signups. Rinse and repeat as needed.
Author
Owner

@ismxilxrif commented on GitHub (Jul 6, 2025):

would be great if this receive greater attention :)

<!-- gh-comment-id:3041236424 --> @ismxilxrif commented on GitHub (Jul 6, 2025): would be great if this receive greater attention :)
Author
Owner

@Aniket-IN commented on GitHub (Jul 23, 2025):

This is a much needed feature,
The invite links should let users signup even if signups are disabled.
Or maybe an option to create users from within the Team settings.

<!-- gh-comment-id:3110446888 --> @Aniket-IN commented on GitHub (Jul 23, 2025): This is a much needed feature, The invite links should let users signup even if signups are disabled. Or maybe an option to create users from within the Team settings.
Author
Owner

@ismxilxrif commented on GitHub (Jul 28, 2025):

yes @Aniket-IN , that would also be a viable solution, hope can have more attention on this matter

<!-- gh-comment-id:3125406634 --> @ismxilxrif commented on GitHub (Jul 28, 2025): yes @Aniket-IN , that would also be a viable solution, hope can have more attention on this matter
Author
Owner

@NDCallahan commented on GitHub (Jul 30, 2025):

Providing the ability to invite someone for signing up while public signups are disabled would be a phenomenal addition. I do not want to allow global signups. instead I only want to invite folks to join. Additionally, being able to manually set up users (without doing do with database commands) would be icing on the cake!

<!-- gh-comment-id:3137227367 --> @NDCallahan commented on GitHub (Jul 30, 2025): Providing the ability to invite someone for signing up while public signups are disabled would be a phenomenal addition. I do not want to allow global signups. instead I only want to invite folks to join. Additionally, being able to manually set up users (without doing do with database commands) would be icing on the cake!
Author
Owner

@cod3master commented on GitHub (Aug 14, 2025):

+1 — self-hosted needs domain allowlist and invite override when public signups are off

Problem

  • Self-hosted installs often need to:

    1. Restrict signups to company domains, and
    2. Disable public signups while still allowing admin invites.
      Currently, disabling signups breaks invites by redirecting to /signup.

Proposed behaviour

  • Add a simple signup state machine:
SIGNUPS_MODE = "public" | "allowlist" | "disabled"
SIGNUPS_ALLOWLIST = "example.com,example.org"
INVITES_OVERRIDE_SIGNUPS = true   # invites work even if MODE=disabled
INVITES_RESPECT_ALLOWLIST = false # if true, invites also enforce allowlist

Rules

  • public: anyone can sign up.
  • allowlist: only emails with domains in SIGNUPS_ALLOWLIST.
  • disabled: block /signup unless a valid invite is present.
  • If INVITES_OVERRIDE_SIGNUPS=true, a valid invite always permits account creation; optionally require allowlist with INVITES_RESPECT_ALLOWLIST=true.

UX

  • /signup without invite:

    • disabled: show “Signups are disabled. Ask an admin for an invite.”
    • allowlist: reject non-allowed domains with a clear error.
  • Invite acceptance: prefill email and allow account creation even if signups are disabled (per flags above).

<!-- gh-comment-id:3187733775 --> @cod3master commented on GitHub (Aug 14, 2025): **+1 — self-hosted needs domain allowlist *and* invite override when public signups are off** **Problem** * Self-hosted installs often need to: 1. Restrict signups to company domains, and 2. Disable public signups while still allowing admin invites. Currently, disabling signups breaks invites by redirecting to `/signup`. **Proposed behaviour** * Add a simple signup state machine: ```text SIGNUPS_MODE = "public" | "allowlist" | "disabled" SIGNUPS_ALLOWLIST = "example.com,example.org" INVITES_OVERRIDE_SIGNUPS = true # invites work even if MODE=disabled INVITES_RESPECT_ALLOWLIST = false # if true, invites also enforce allowlist ``` **Rules** * `public`: anyone can sign up. * `allowlist`: only emails with domains in `SIGNUPS_ALLOWLIST`. * `disabled`: block `/signup` unless a valid invite is present. * If `INVITES_OVERRIDE_SIGNUPS=true`, a valid invite always permits account creation; optionally require allowlist with `INVITES_RESPECT_ALLOWLIST=true`. **UX** * `/signup` without invite: * `disabled`: show “Signups are disabled. Ask an admin for an invite.” * `allowlist`: reject non-allowed domains with a clear error. * Invite acceptance: prefill email and allow account creation even if signups are disabled (per flags above).
Author
Owner

@ismxilxrif commented on GitHub (Aug 20, 2025):

@cod3master great addition!

<!-- gh-comment-id:3204294168 --> @ismxilxrif commented on GitHub (Aug 20, 2025): @cod3master great addition!
Author
Owner

@ephraimduncan commented on GitHub (Aug 21, 2025):

This is great, will look into it.

<!-- gh-comment-id:3208868446 --> @ephraimduncan commented on GitHub (Aug 21, 2025): This is great, will look into it.
Author
Owner

@NDCallahan commented on GitHub (Aug 21, 2025):

This is great, will look into it.

Thank you!!!

<!-- gh-comment-id:3208922650 --> @NDCallahan commented on GitHub (Aug 21, 2025): > This is great, will look into it. Thank you!!!
Author
Owner

@ismxilxrif commented on GitHub (Aug 21, 2025):

This is great, will look into it.

Thanks man! looking forward towards it!

<!-- gh-comment-id:3209056634 --> @ismxilxrif commented on GitHub (Aug 21, 2025): > This is great, will look into it. Thanks man! looking forward towards it!
Author
Owner

@Diwanshumidha commented on GitHub (Sep 12, 2025):

Can I pick this up

<!-- gh-comment-id:3283696834 --> @Diwanshumidha commented on GitHub (Sep 12, 2025): Can I pick this up
Author
Owner

@pierre-H commented on GitHub (Sep 27, 2025):

Any news @ephraimduncan ?

<!-- gh-comment-id:3342048082 --> @pierre-H commented on GitHub (Sep 27, 2025): Any news @ephraimduncan ?
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/documenso#541
No description provided.