Integrations/BMC Control-M
Live ยท Partner Integration

GuardEntry ร— BMC Control-M

Install GuardEntry's Policy Gate Job Type in Control-M and chain it as a predecessor to any job โ€” file transfer, DB load, ERP run, cloud pipeline โ€” and the downstream job will run only when APR returns allow. Same Job Type works on self-hosted Control-M and BMC Helix Control-M. Setup takes about 15 minutes.

Prerequisites

  • โ€ขBMC Helix Control-M, or self-hosted Control-M/Enterprise Manager 9.0.19.100+
  • โ€ขControl-M Application Integrator access (admin role)
  • โ€ขA GuardEntry API key โ€” get one free at guardentry.ai/connect
  • โ€ขAgents with outbound HTTPS to app.guardentry.ai (or your tenant URL)
1

Import the GuardEntry Policy Gate

  1. 1. Download GuardEntry_PolicyGate_v1.0.0.ccp from the in-dashboard wizard at app.guardentry.ai/dashboard/integrations/setup/controlm
  2. 2. Open Control-M Application Integrator (Helix: Tools โ†’ Application Integrator; self-hosted: AI workstation)
  3. 3. Click Import โ†’ upload the .ccp file
  4. 4. Open the imported GuardEntry Policy Gate Job Type โ†’ click Publish
  5. 5. Deploy to Agents (Helix auto-deploys; self-hosted: ctm deploy jobtype or EM's Deploy Plug-in dialog)

The import adds one Job Type to your Control-M instance:

  • โ€ข GuardEntry Policy Gate โ€” chain as a predecessor to any job to gate it on APR policy
2

Configure the connection profile

The connection profile stores your GuardEntry API key and base URL.

  1. 1. In Control-M, go to Configuration โ†’ Connection Profiles
  2. 2. Click New โ†’ pick GuardEntry Policy Gate
  3. 3. Fill in:
FieldValue
NameGUARDENTRY_PROD
api_keyfgrc_k1_โ€ฆ (the key minted in the wizard)
base_urlhttps://app.guardentry.ai

4. Click Save. Reuse this profile across every GuardEntry Policy Gate job.

3

Chain it as a predecessor

  1. 1. Open the folder containing the job you want to gate
  2. 2. Add a new job โ†’ select GuardEntry Policy Gate
  3. 3. Set the connection profile to GUARDENTRY_PROD
  4. 4. Configure inputs:
InputValueNotes
actor_typeworkflow.control-m.<job-class>e.g. workflow.control-m.file-transfer โ€” drives policy lookup
contentDescription of what the downstream job doesTemplatable. Default: %%JOBNAME on %%NODEID at %%ODATE
labelFree-text intent tagAudit grouping, e.g. controlm.backup
modefast | balanced | strictStart with fast (regex/substring, <200ms)
on_blockfail | warnfail exits 1 โ†’ downstream goes NOT_OK. warn = observe mode

5. In Control-M's folder view, draw a flow line from GuardEntry Policy Gate into the downstream job โ€” Policy Gate now runs first, and the downstream job inherits its NOT_OK state on block.

6. Click Save โ†’ Order the folder to send a test call.

Outputs available to downstream jobs

GuardEntry Policy Gate writes the following Control-M variables that downstream jobs can read via %%APPL_VAR:

VariableDescription
%%GUARDENTRY_DECISIONallow | block | require_approval | uncertain | verify | unreachable
%%GUARDENTRY_POLICY_IDGuardEntry policy UUID โ€” empty if no policy matched
%%GUARDENTRY_AUDIT_LINKDeep link to the audit record in GuardEntry
%%GUARDENTRY_REVIEWS_LINKDeep link to the review queue (populated when require_approval)

The full decision JSON is written to job sysout for Control-M's native audit visibility.

Example use cases

File-transfer gate

Chain Policy Gate before a Control-M Managed File Transfer (MFT) job. Set actor_type=workflow.control-m.file-transfer and pass the source path + destination + file pattern as content. APR can block transfers matching exfiltration patterns (PII filenames, unusual destinations).

Mass-update gate

Chain Policy Gate before a batch DB job. Set actor_type=workflow.control-m.db-batch and pass the SQL or job name as content. APR can require approval for jobs touching production-tier tables outside the change window.

ERP / cloud pipeline gate

Chain Policy Gate before an SAP, Informatica, or AWS Step Functions job. Set actor_type=workflow.control-m.erp and pass pipeline metadata in content. APR gates on the customer's compliance posture (SOC 2, ISO 27001 controls).

Troubleshooting

โš ๏ธDownstream job runs even when APR returns block โ€” Confirm the gate job's on_block is set to fail (not warn). In warn mode, blocks are logged but exit code is 0, so the downstream job still runs.
โš ๏ธ"unreachable" decisions โ€” The Agent can't reach GuardEntry. Check outbound HTTPS to app.guardentry.ai:443. Policy Gate fails open on network errors so a GuardEntry outage doesn't take down your batch window.
โš ๏ธAll decisions are allow โ€” Your policy may be in observe mode. The ๐Ÿ‘ observe badge in your GuardEntry dashboard means violations are logged but not blocked. Switch to enforcement from the policy settings page when ready.