feat: add saml model & controller [CW-2958] (#12289)

This PR adds the foundation for account-level SAML SSO configuration in
Chatwoot Enterprise. It introduces a new `AccountSamlSettings` model and
management API that allows accounts to configure their own SAML identity
providers independently, this also includes the certificate generation
flow

The implementation includes a new controller
(`Api::V1::Accounts::SamlSettingsController`) that provides CRUD
operations for SAML configuration

The feature is properly gated behind the 'saml' feature flag and
includes administrator-only authorization via Pundit policies.
This commit is contained in:
Shivam Mishra
2025-09-04 02:00:42 +05:30
committed by GitHub
parent b46c07519a
commit 33058b5f3f
17 changed files with 590 additions and 1 deletions

View File

@@ -204,3 +204,7 @@
enabled: false
premium: true
chatwoot_internal: true
- name: saml
display_name: SAML
enabled: false
premium: true

View File

@@ -55,6 +55,8 @@ en:
failed: Signup failed
assignment_policy:
not_found: Assignment policy not found
saml:
feature_not_enabled: SAML feature not enabled for this account
data_import:
data_type:
invalid: Invalid data type

View File

@@ -69,6 +69,7 @@ Rails.application.routes.draw do
end
resources :documents, only: [:index, :show, :create, :destroy]
end
resource :saml_settings, only: [:show, :create, :update, :destroy]
resources :agent_bots, only: [:index, :create, :show, :update, :destroy] do
delete :avatar, on: :member
post :reset_access_token, on: :member