Restrict API access to Atomicwork's IP addresses
When you connect Atomicwork to services in your Microsoft Entra tenant — whether through the Azure AD integration, Microsoft Intune, Microsoft Teams, SharePoint, Sentinel, or any other Entra-based integration — Atomicwork authenticates using app-only client credentials (client ID and client secret) rather than a signed-in user. By default, Microsoft Entra accepts these API calls from any IP address.
We recommend restricting this traffic so that your Entra tenant only accepts API requests from Atomicwork’s static outbound IP addresses. This ensures that even if a client secret were compromised, it could not be used from outside Atomicwork’s infrastructure.
The mechanism for doing this is Conditional Access for workload identities — a policy type in Microsoft Entra that evaluates service principal token requests based on conditions like IP location.
This is not the same as standard Conditional Access. Standard Conditional Access policies (used for SSO, MFA, and device compliance) only evaluate user sign-ins and token refreshes. They do not apply to app-only API traffic. Conditional Access for workload identities is a separate policy type designed specifically for service principal traffic.
Prerequisites
Before setting up IP restrictions, confirm the following:
- Microsoft Entra Workload ID Premium license. Your tenant needs this license to create or modify workload identity policies. Standard Entra ID P1/P2 licenses do not cover this — check with your Microsoft account team if you are unsure whether your tenant has this license.
- Single-tenant app registration. This approach works because the Atomicwork app is registered as a single-tenant application in your directory. Multi-tenant apps and managed identities cannot be targeted with workload identity policies.
- Block access is the only grant control. Workload identity policies do not support “require MFA” or other grant options — the only available control is to block access from locations outside your allowed IP range.
Atomicwork’s outbound IP addresses
Add the set that matches your Atomicwork environment. If you are not sure which set applies to your instance, confirm with your Atomicwork CSM before proceeding — using the wrong set will break the integration.
Last verified: November 2026. If these addresses change, Atomicwork will notify affected customers by email in advance.
Setup
Step 1: Add Atomicwork’s IPs as a named location
- In the Microsoft Entra admin center, go to Protection > Conditional Access > Named locations.
- Select IP ranges location and name it something recognizable, like
Atomicwork – outbound IPs. - Add the IP addresses for your environment from the table above. Enter each address as a
/32CIDR range (only masks greater than/8are allowed). - Leave Mark as trusted location unchecked — the workload identity policy in Step 3 references this list directly.
Step 2: Find the Atomicwork service principal’s Object ID
- In the Entra admin center, go to Enterprise applications (not App registrations) and find the Atomicwork app you registered.
- Open it and copy the Object ID from the Overview tab.
Use the Object ID from Enterprise applications, not App registrations. The Object ID on the App registrations page identifies the app registration itself. The workload identity policy needs the service principal’s Object ID, which is shown under Enterprise applications.
If you have multiple Atomicwork integrations in your tenant (for example, separate app registrations for Azure AD and Intune), repeat this step for each service principal you want to restrict.
Step 3: Create the workload identity policy
- Go to Protection > Conditional Access > Policies and click New policy.
- Under Users or workload identities, switch to Workload identities. Under Include, select Select service principals and pick the Atomicwork service principal from Step 2.
- Under Target resources, select All resources. The policy is already scoped to the Atomicwork app through the service principal selection — it only evaluates when that service principal requests a token.
- Under Conditions > Locations, set Include to Any location and Exclude to the
Atomicwork – outbound IPsnamed location you created in Step 1. - Under Grant, select Block access. Any token request from outside the excluded (allowed) IP range will be blocked.
- Save the policy as Report-only first.
Restricting multiple Atomicwork apps. If you have multiple Atomicwork service principals, you can either include them all in a single policy (select multiple service principals in Step 2) or create a separate policy per app. A single policy is simpler to maintain. The Named Location from Step 1 only needs to be created once.
Step 4: Verify and enable
- With the policy in Report-only mode, go to Entra ID > Monitoring & health > Sign-in logs > Service principal sign-ins. Check the Conditional Access tab on each entry to confirm that normal Atomicwork sync traffic is not being flagged.
- Once you have verified that legitimate traffic passes correctly, switch the policy from Report-only to On.
Always test in Report-only mode first. This policy affects the service principal’s own token requests. A wrong IP range or selecting the wrong service principal can silently stop user sync and provisioning before anyone notices.
FAQ
- Does this affect SAML SSO sign-in? No. Workload identity policies only evaluate service principal token requests (the app’s API calls). User SSO sign-in is a separate flow and is not affected by this policy.
- Can I apply this per-permission instead of to the whole app? No. The policy scopes to the service principal as a whole, not to individual Microsoft Graph permissions.
- What if Atomicwork’s IP addresses change? Atomicwork will email affected customers in advance. You will need to update the named location in Entra with the new addresses.
- Which Atomicwork integrations does this apply to? Any Atomicwork integration that uses a single-tenant app registration in your Entra tenant, including Azure AD. Atomicwork will notify customers as more integrations are confirmed.
