chore: deprecate LDAP and SAML on workspaces without a Premium plan
Proposed changes
First of two PRs turning LDAP and SAML into Premium-only features. This one only announces it — nothing stops working on 8.x. The enforcement lives in #41643, targeting release-9.0.0.
Two channels, both aimed at workspaces that have no license covering the feature:
- Admin settings:
LDAP_EnableandSAML_Custom_<service>now carry a deprecation callout stating that version 9.0.0 will require a Premium plan. - Server log: the first LDAP or SAML login after a boot logs a warning naming the license module the workspace is missing (
ldap-enterprise/saml-enterprise). Checked at login time, not at startup, so the license is already loaded and licensed workspaces never see it.
Warned once per module per process — enough for an ops alert to fire, quiet enough not to flood the log on a busy workspace.
Issue(s)
Prerequisite for making LDAP and SAML Premium-only in 9.0.0.
Steps to test or reproduce
- Start a workspace with no license (or one without
ldap-enterprise). - Open Admin → Settings → LDAP and confirm the callout on Enable. Same for Admin → Settings → SAML.
- Log in with an LDAP user and confirm the warning in the server log; log in again and confirm it is not repeated.
- Apply a license including
ldap-enterpriseand confirm no warning is logged on the next LDAP login.
Further comments
The callout text is shared by both settings (Premium_required_from_9_0_0_alert) and is rendered regardless of license, since a workspace that already has the plan reads it as a statement of fact rather than a warning. Say the word if you'd rather gate the callout on the missing module — that needs client-side license awareness in the settings page, not a settings flag.
Summary by CodeRabbit
- Deprecation Notice
- LDAP and SAML authentication remain available for now on unlicensed workspaces.
- Admin settings now indicate that Premium licensing will be required starting with version 9.0.0.
- Administrators are warned when unlicensed LDAP or SAML authentication is used.