diff --git a/demos/global-matrix-auth/README.md b/demos/global-matrix-auth/README.md
index 331e52dd2d..ea9fb1a924 100644
--- a/demos/global-matrix-auth/README.md
+++ b/demos/global-matrix-auth/README.md
@@ -1,5 +1,7 @@
# matrix-auth-plugin
+Requires `matrix-auth` >= 2.4
+
## sample-configuration (global matrix)
```yaml
diff --git a/integrations/pom.xml b/integrations/pom.xml
index 20c2e99471..c83a90d4d2 100644
--- a/integrations/pom.xml
+++ b/integrations/pom.xml
@@ -179,7 +179,7 @@
org.jenkins-ci.plugins
matrix-auth
- 2.2
+ 2.4
test
diff --git a/support/pom.xml b/support/pom.xml
index db96c1b7a9..38d6c9543b 100644
--- a/support/pom.xml
+++ b/support/pom.xml
@@ -65,14 +65,6 @@
true
-
- org.jenkins-ci.plugins
- matrix-auth
- 2.3
- true
-
-
-
scm:git:git://github.com/jenkinsci/configuration-as-code-plugin.git
diff --git a/support/src/main/java/io/jenkins/plugins/casc/support/matrixauth/GlobalMatrixAuthorizationStrategyConfigurator.java b/support/src/main/java/io/jenkins/plugins/casc/support/matrixauth/GlobalMatrixAuthorizationStrategyConfigurator.java
deleted file mode 100644
index aef1713c55..0000000000
--- a/support/src/main/java/io/jenkins/plugins/casc/support/matrixauth/GlobalMatrixAuthorizationStrategyConfigurator.java
+++ /dev/null
@@ -1,43 +0,0 @@
-package io.jenkins.plugins.casc.support.matrixauth;
-
-import edu.umd.cs.findbugs.annotations.CheckForNull;
-import edu.umd.cs.findbugs.annotations.NonNull;
-import hudson.Extension;
-import hudson.security.GlobalMatrixAuthorizationStrategy;
-import io.jenkins.plugins.casc.ConfigurationContext;
-import io.jenkins.plugins.casc.ConfiguratorException;
-import io.jenkins.plugins.casc.model.CNode;
-import io.jenkins.plugins.casc.model.Mapping;
-import org.kohsuke.accmod.Restricted;
-import org.kohsuke.accmod.restrictions.NoExternalUse;
-
-/**
- * @author Mads Nielsen
- * @since TODO
- */
-@Extension(optional = true, ordinal = 1)
-@Restricted(NoExternalUse.class)
-public class GlobalMatrixAuthorizationStrategyConfigurator extends MatrixAuthorizationStrategyConfigurator {
-
- @Override
- @NonNull
- public String getName() {
- return "globalMatrix";
- }
-
- @Override
- public Class getTarget() {
- return GlobalMatrixAuthorizationStrategy.class;
- }
-
- @Override
- public GlobalMatrixAuthorizationStrategy instance(Mapping mapping, ConfigurationContext context) throws ConfiguratorException {
- return new GlobalMatrixAuthorizationStrategy();
- }
-
- @CheckForNull
- @Override
- public CNode describe(GlobalMatrixAuthorizationStrategy instance, ConfigurationContext context) throws Exception {
- return compare(instance, new GlobalMatrixAuthorizationStrategy(), context);
- }
-}
diff --git a/support/src/main/java/io/jenkins/plugins/casc/support/matrixauth/MatrixAuthorizationStrategyConfigurator.java b/support/src/main/java/io/jenkins/plugins/casc/support/matrixauth/MatrixAuthorizationStrategyConfigurator.java
deleted file mode 100644
index 79972e520d..0000000000
--- a/support/src/main/java/io/jenkins/plugins/casc/support/matrixauth/MatrixAuthorizationStrategyConfigurator.java
+++ /dev/null
@@ -1,59 +0,0 @@
-package io.jenkins.plugins.casc.support.matrixauth;
-
-import edu.umd.cs.findbugs.annotations.NonNull;
-import hudson.security.AuthorizationStrategy;
-import hudson.security.Permission;
-import io.jenkins.plugins.casc.Attribute;
-import io.jenkins.plugins.casc.BaseConfigurator;
-import io.jenkins.plugins.casc.impl.attributes.MultivaluedAttribute;
-import io.jenkins.plugins.casc.util.PermissionFinder;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Set;
-import java.util.stream.Collectors;
-import org.jenkinsci.plugins.matrixauth.AuthorizationContainer;
-
-/**
- * @author Nicolas De Loof
- */
-public abstract class MatrixAuthorizationStrategyConfigurator extends BaseConfigurator {
-
- @NonNull
- @Override
- public Class getImplementedAPI() {
- return AuthorizationStrategy.class;
- }
-
-
- @Override
- @NonNull
- public Set> describe() {
- return Collections.singleton(
- new MultivaluedAttribute("grantedPermissions", String.class)
- .getter(MatrixAuthorizationStrategyConfigurator::getGrantedPermissions)
- .setter(MatrixAuthorizationStrategyConfigurator::setGrantedPermissions)
- );
- }
-
- /**
- * Extract container's permissions as a List of "PERMISSION:sid"
- */
- static Collection getGrantedPermissions(AuthorizationContainer container) {
- return container.getGrantedPermissions().entrySet().stream()
- .flatMap( e -> e.getValue().stream().map(v -> e.getKey()+":"+v))
- .collect(Collectors.toList());
- }
-
- /**
- * Configure container's permissions from a List of "PERMISSION:sid"
- * @param container
- * @param permissions
- */
- static void setGrantedPermissions(AuthorizationContainer container, Collection permissions) {
- permissions.forEach(p -> {
- final int i = p.indexOf(':');
- final Permission permission = PermissionFinder.findPermission(p.substring(0, i));
- container.add(permission, p.substring(i+1));
- });
- }
-}
diff --git a/support/src/main/java/io/jenkins/plugins/casc/support/matrixauth/ProjectMatrixAuthorizationStrategyConfigurator.java b/support/src/main/java/io/jenkins/plugins/casc/support/matrixauth/ProjectMatrixAuthorizationStrategyConfigurator.java
deleted file mode 100644
index 3cb24a66bd..0000000000
--- a/support/src/main/java/io/jenkins/plugins/casc/support/matrixauth/ProjectMatrixAuthorizationStrategyConfigurator.java
+++ /dev/null
@@ -1,40 +0,0 @@
-package io.jenkins.plugins.casc.support.matrixauth;
-
-import edu.umd.cs.findbugs.annotations.CheckForNull;
-import edu.umd.cs.findbugs.annotations.NonNull;
-import hudson.Extension;
-import hudson.security.ProjectMatrixAuthorizationStrategy;
-import io.jenkins.plugins.casc.ConfigurationContext;
-import io.jenkins.plugins.casc.ConfiguratorException;
-import io.jenkins.plugins.casc.model.CNode;
-import io.jenkins.plugins.casc.model.Mapping;
-import org.kohsuke.accmod.Restricted;
-import org.kohsuke.accmod.restrictions.NoExternalUse;
-
-@Extension(optional = true, ordinal = 1)
-@Restricted(NoExternalUse.class)
-public class ProjectMatrixAuthorizationStrategyConfigurator extends MatrixAuthorizationStrategyConfigurator {
-
- @Override
- @NonNull
- public String getName() {
- return "projectMatrix";
- }
-
- @Override
- public Class getTarget() {
- return ProjectMatrixAuthorizationStrategy.class;
- }
-
- @Override
- public ProjectMatrixAuthorizationStrategy instance(Mapping mapping, ConfigurationContext context) throws ConfiguratorException {
- return new ProjectMatrixAuthorizationStrategy();
- }
-
- @CheckForNull
- @Override
- public CNode describe(ProjectMatrixAuthorizationStrategy instance, ConfigurationContext context) throws Exception {
- return compare(instance, new ProjectMatrixAuthorizationStrategy(), context);
- }
-
-}