diff --git a/ee/app/assets/javascripts/approvals/components/rule_form.vue b/ee/app/assets/javascripts/approvals/components/rule_form.vue
index 28893f4905abd5390ad6887cb1a0b5cd2000d0c6..9bfd9b2b31c29fc92b11886ea93d1e3fc7c35bbb 100644
--- a/ee/app/assets/javascripts/approvals/components/rule_form.vue
+++ b/ee/app/assets/javascripts/approvals/components/rule_form.vue
@@ -75,7 +75,7 @@ export default {
       severityLevels: [],
       vulnerabilityStates: [],
       approvalVulnerabilityStatesKeys: Object.keys(APPROVAL_VULNERABILITY_STATES),
-      reportTypesKeys: Object.keys(REPORT_TYPES),
+      reportTypesKeys: Object.keys(this.$options.REPORT_TYPES),
       severityLevelsKeys: Object.keys(SEVERITY_LEVELS),
       ...this.getInitialData(),
     };
@@ -513,6 +513,7 @@ export default {
           key="all"
           is-check-item
           :is-checked="areAllScannersSelected"
+          data-testid="all-scanners-selected"
           @click.native.capture.stop="setAllSelectedScanners"
         >
           <gl-truncate :text="$options.APPROVAL_DIALOG_I18N.form.selectAllLabel" />
diff --git a/ee/spec/frontend/approvals/components/rule_form_spec.js b/ee/spec/frontend/approvals/components/rule_form_spec.js
index 85bfba8d007412694f9e8614359003f8258f8cf6..df8d2dbdf1a3a7773aea9a3dad3b93caebe79781 100644
--- a/ee/spec/frontend/approvals/components/rule_form_spec.js
+++ b/ee/spec/frontend/approvals/components/rule_form_spec.js
@@ -643,6 +643,26 @@ describe('EE Approvals RuleForm', () => {
         });
       });
 
+      describe('and with all scanners selected', () => {
+        const findAllScannersSelected = () => wrapper.findByTestId('all-scanners-selected');
+        beforeEach(() => {
+          createComponent({
+            initRule: TEST_RULE_VULNERABILITY_CHECK,
+          });
+          findAllScannersSelected().trigger('click');
+          findForm().trigger('submit');
+        });
+
+        it(`dispatches the action on submit without including ${EXCLUDED_REPORT_TYPE}`, () => {
+          const reportTypesKeys = Object.keys(REPORT_TYPES);
+          const expectedScanners = reportTypesKeys.filter((item) => item !== EXCLUDED_REPORT_TYPE);
+          expect(actions.postRule).toHaveBeenCalledWith(
+            expect.anything(),
+            expect.objectContaining({ scanners: expectedScanners }),
+          );
+        });
+      });
+
       describe('with invalid number of vulnerabilities', () => {
         beforeEach(() => {
           createComponent({