diff --git a/.eslintrc.front.js b/.eslintrc.front.js
index 58a13b5d44..90c97ca24d 100644
--- a/.eslintrc.front.js
+++ b/.eslintrc.front.js
@@ -30,6 +30,7 @@ module.exports = {
expect: false,
assert: false,
chai: false,
+ ENABLED_EE_FEATURES: false,
// TODO: put all this in process.env in webpack to avoid having to set them here
REMOTE_URL: true,
BACKEND_URL: true,
diff --git a/jest.config.front.js b/jest.config.front.js
index 47cae629ea..c46933c1fa 100644
--- a/jest.config.front.js
+++ b/jest.config.front.js
@@ -44,6 +44,7 @@ module.exports = {
PUBLIC_PATH: '/admin',
REMOTE_URL: '/',
NODE_ENV: 'test',
+ ENABLED_EE_FEATURES: [],
},
moduleDirectories: [
'node_modules',
diff --git a/packages/strapi-admin/ee/admin/containers/AuthPage/components/Login/index.js b/packages/strapi-admin/ee/admin/containers/AuthPage/components/Login/index.js
index dda3054ad9..f405724f47 100644
--- a/packages/strapi-admin/ee/admin/containers/AuthPage/components/Login/index.js
+++ b/packages/strapi-admin/ee/admin/containers/AuthPage/components/Login/index.js
@@ -21,7 +21,7 @@ const Login = loginProps => {
const { isLoading, data: providers } = useAuthProviders();
const { formatMessage } = useIntl();
- if (!isLoading && providers.length === 0) {
+ if (!ENABLED_EE_FEATURES.includes('sso') || (!isLoading && providers.length === 0)) {
return ;
}
diff --git a/packages/strapi-admin/ee/admin/containers/AuthPage/components/Providers/index.js b/packages/strapi-admin/ee/admin/containers/AuthPage/components/Providers/index.js
index d53a168a15..2b153d2b28 100644
--- a/packages/strapi-admin/ee/admin/containers/AuthPage/components/Providers/index.js
+++ b/packages/strapi-admin/ee/admin/containers/AuthPage/components/Providers/index.js
@@ -25,7 +25,7 @@ const Providers = () => {
push('/auth/login');
};
- if (!isLoading && providers.length === 0) {
+ if (!ENABLED_EE_FEATURES.includes('sso') || (!isLoading && providers.length === 0)) {
return ;
}
diff --git a/packages/strapi-admin/ee/admin/containers/SettingsPage/utils/customRoutes.js b/packages/strapi-admin/ee/admin/containers/SettingsPage/utils/customRoutes.js
index ab1e8d65da..64ee23385f 100644
--- a/packages/strapi-admin/ee/admin/containers/SettingsPage/utils/customRoutes.js
+++ b/packages/strapi-admin/ee/admin/containers/SettingsPage/utils/customRoutes.js
@@ -1,12 +1,16 @@
import { SETTINGS_BASE_URL } from '../../../../../admin/src/config';
import SingleSignOn from '../SingleSignOn';
-const customRoutes = [
- {
- Component: SingleSignOn,
- to: `${SETTINGS_BASE_URL}/single-sign-on`,
- exact: true,
- },
-];
+const ssoRoutes = ENABLED_EE_FEATURES.includes('sso')
+ ? [
+ {
+ Component: SingleSignOn,
+ to: `${SETTINGS_BASE_URL}/single-sign-on`,
+ exact: true,
+ },
+ ]
+ : [];
+
+const customRoutes = [...ssoRoutes];
export default customRoutes;
diff --git a/packages/strapi-admin/ee/admin/hooks/useSettingsMenu/utils/customGlobalLinks.js b/packages/strapi-admin/ee/admin/hooks/useSettingsMenu/utils/customGlobalLinks.js
index 7137ae0340..66b80fd680 100644
--- a/packages/strapi-admin/ee/admin/hooks/useSettingsMenu/utils/customGlobalLinks.js
+++ b/packages/strapi-admin/ee/admin/hooks/useSettingsMenu/utils/customGlobalLinks.js
@@ -1,14 +1,18 @@
import { SETTINGS_BASE_URL } from '../../../../../admin/src/config';
import adminPermissions from '../../../../../admin/src/permissions';
-const customGlobalLinks = [
- {
- title: { id: 'Settings.sso.title' },
- to: `${SETTINGS_BASE_URL}/single-sign-on`,
- name: 'sso',
- isDisplayed: false,
- permissions: adminPermissions.settings.sso.main,
- },
-];
+const ssoGlobalRoutes = ENABLED_EE_FEATURES.includes('sso')
+ ? [
+ {
+ title: { id: 'Settings.sso.title' },
+ to: `${SETTINGS_BASE_URL}/single-sign-on`,
+ name: 'sso',
+ isDisplayed: false,
+ permissions: adminPermissions.settings.sso.main,
+ },
+ ]
+ : [];
+
+const customGlobalLinks = [...ssoGlobalRoutes];
export default customGlobalLinks;
diff --git a/packages/strapi-admin/webpack.config.dev.js b/packages/strapi-admin/webpack.config.dev.js
index 74fa154da7..ab0e3d8098 100644
--- a/packages/strapi-admin/webpack.config.dev.js
+++ b/packages/strapi-admin/webpack.config.dev.js
@@ -15,6 +15,7 @@ module.exports = () => {
const options = {
backend: 'http://localhost:1337',
publicPath: '/admin/',
+ features: process.env.ENABLED_EE_FEATURES || [],
};
const args = {