This PR improves Coolify’s authentication model by decoupling OAuth2 self-registration from password-based registration and enforcing OAuth-only authentication for OAuth-origin users.
It enables administrators to fully delegate access control to an external Identity Provider (e.g. Authentik, Azure AD, Okta), making it possible to instantly revoke access across multiple Coolify instances by disabling a user in the IdP.
is_oauth_registration_enabled (Settings → Advanced)
is_registration_enabled) is disabledoauth_only flag on users
oauth_onlyoauth_only users are blocked from logging in via email/passwordoauth_only users throw a validation error📹 Demo video included in this PR
https://github.com/user-attachments/assets/3df607fe-24f1-42aa-bcf5-1d6acbd05298
Shows:
oauth_only user creation[!IMPORTANT]
- I have read and understood the contributor guidelines. If I have failed to follow any guideline, I understand that this PR may be closed without review.
- I have tested the changes thoroughly and am confident that they will work as expected without issues when the maintainer tests them
Harsh Pratap Singh
@harsh-pratap9904-gmail-com
Kewyn Ferreira
@kewynf