Cloud & infrastructure

Replace Require Approved Client App with the App Protection Policy Grant

Policies using the retired approved client app grant are now read-only. Find them, build replacements that require an app protection policy, test in report-only and cut over.

10 min read
On this page

Since June 30, 2026, every Conditional Access policy that uses Require approved client app is read-only: it still enforces while enabled, but you can't edit it, so you can no longer add Require app protection policy to it. To migrate, list the affected policies, make sure Intune app protection policies cover the users and apps involved, create a replacement policy with the same assignments and the Require app protection policy grant in report-only mode, and once the sign-in logs look right, turn the new policy on and disable the old one.

Who this is for and what you will have at the end

This guide is for Microsoft Entra and Intune administrators who protect Microsoft 365 on iOS and Android with mobile application management (MAM), often on personal devices that aren't enrolled, and who still have policies built on the approved client app grant.

At the end you will have:

  • An inventory of every policy that still uses the retired grant.
  • Intune app protection policies assigned to everyone the new Conditional Access policy will cover.
  • Replacement policies validated in report-only mode.
  • The old policies disabled, and later deleted, without a gap in protection.

What changed and what it means

Microsoft first announced the retirement for March 2026, then extended it to June 30, 2026. On that date the control and any policy that includes it moved to a read-only state:

ActionBefore June 30, 2026Now
Create a policy with Require approved client appAllowedNot possible
Edit a policy that includes itAllowedNot possible
Disable or delete such a policyAllowedAllowed
Enforcement of an enabled policyEnforcedStill enforced

Microsoft's migration documentation says existing policies continue to be enforced as long as they remain enabled, so don't assume the old policies stopped doing anything. They still block users, and you can't fix them in place.

The two grants check different things:

Require approved client appRequire app protection policy
ChecksThe app is on Microsoft's approved client app listThe app has an Intune app protection policy applied for the user
PlatformsiOS and AndroidiOS and Android; preview for Microsoft Edge on Windows
Broker appAuthenticator on iOS; Authenticator or Company Portal on AndroidAuthenticator on iOS; Company Portal on Android
StatusRetired, read-onlyCurrent

The new grant is stricter in a useful way: an app passes only if your app protection policy actually reached it for that user, not just because the app is capable of supporting one.

Prerequisites

  • Licensing: Microsoft Entra ID P1 (or Microsoft 365 Business Premium) for Conditional Access, and Microsoft Intune for app protection policies.
  • Roles: at least Conditional Access Administrator in Microsoft Entra, and an Intune role that can create app protection policies.
  • Emergency access: at least one break-glass account to exclude from the new policy. Microsoft's procedure for an all-users policy requires excluding at least one account so you can't lock yourself out.
  • PowerShell (optional): the Microsoft Graph PowerShell SDK with the Policy.Read.All permission for the inventory.

Step 1: Find the policies that use the retired grant

In the Graph API, the approved client app grant appears as approvedApplication in grantControls.builtInControls, and the app protection grant as compliantApplication. The operator value shows whether controls are combined with AND or OR.

Connect-MgGraph -Scopes 'Policy.Read.All'
 
Get-MgIdentityConditionalAccessPolicy -All |
    Where-Object { $_.GrantControls.BuiltInControls -contains 'approvedApplication' } |
    Select-Object DisplayName, State, Id,
        @{ Name = 'Controls'; Expression = { $_.GrantControls.BuiltInControls -join ', ' } },
        @{ Name = 'Operator'; Expression = { $_.GrantControls.Operator } } |
    Format-Table -AutoSize

Sort the results into three cases:

Old grant configurationWhat to build
approvedApplication onlyA new policy with Require app protection policy
approvedApplication OR compliantApplicationA new policy with Require app protection policy only; the old one already accepts app protection, so there is less risk
approvedApplication AND other controls, such as mfaA new policy with Require app protection policy AND the same other controls

Because you will recreate each policy by hand, save its full definition first:

Get-MgIdentityConditionalAccessPolicy -ConditionalAccessPolicyId '<policy-id>' |
    ConvertTo-Json -Depth 10 |
    Out-File '.\ca-policy-backup.json'

Note the users and groups, exclusions, target resources, device platforms, client app types, locations and session controls. The replacement should match all of them except the grant.

Step 2: Make sure app protection policies cover everyone

The new grant only passes when an app protection policy has been applied to the app for that user. Microsoft advises applying app protection policies to devices before applying Conditional Access rules, because it can take time for them to reach existing devices.

  1. In the Microsoft Intune admin center, go to Apps > Protection.
  2. Check the existing iOS/iPadOS and Android policies. If none exist, select Create policy and choose iOS/iPadOS or Android.
  3. On Apps, set Target policy to Core Microsoft Apps (Edge, Excel, Office, OneDrive, OneNote, Outlook, PowerPoint, SharePoint, Teams, To Do and Word), Microsoft Apps, All Apps or Selected apps.
  4. Configure Data protection, Access requirements and Conditional launch.
  5. On Assignments, assign the policy to user groups. App protection policies target users, so the groups must include everyone the Conditional Access policy will cover.

Compare the apps your users actually sign in with against the list of apps that support the app protection grant. Microsoft's list includes Microsoft Edge, Excel, Loop, Office, OneDrive, OneNote, Outlook, Planner, Power BI, PowerPoint, SharePoint, Teams, To Do, Word, Viva Engage and the Windows App, plus partner apps such as Adobe Acrobat Reader. Kaizala, Skype for Business and Visio don't support it, and an OR between the two grants doesn't help them. Find out whether anyone still depends on those apps on mobile before you switch.

Step 3: Create the replacement policy in report-only mode

  1. Sign in to the Microsoft Entra admin center as at least a Conditional Access Administrator.
  2. Browse to Entra ID > Conditional Access > Policies and select New policy.
  3. Name it clearly, for example CA-Mobile-RequireAppProtection.
  4. Under Assignments > Users or workload identities, include the same users as the old policy (for a broad policy, All users) and exclude your break-glass accounts and any exclusions the old policy had.
  5. Under Target resources > Resources > Include, select the same resources as the old policy, or All resources for a broad policy.
  6. Under Conditions > Device platforms, set Configure to Yes, include Android and iOS, and select Done. Recreate any other conditions the old policy used. If you don't configure Client apps, a new policy applies to all client app types.
  7. Under Access controls > Grant, select Grant access, then Require app protection policy. If the old policy combined the grant with other controls, add them and keep Require all the selected controls.
  8. Set Enable policy to Report-only and select Create.

Step 4: Validate the results

Leave the policy in report-only mode long enough to capture normal mobile usage, then review:

  • Sign-in logs: open mobile sign-ins in the Microsoft Entra sign-in logs and check the Report-only tab for your new policy.
  • Policy impact: the policy's impact view shows a snapshot of interactive sign-ins over the past 24 hours, 7 days or 1 month.
  • Conditional Access insights and reporting workbook: compares report-only and enforced results side by side, if you send sign-in logs to a Log Analytics workspace.

Read the results like this:

ResultMeaningAction
Report-only: SuccessApp has an app protection policy for this userNone
Report-only: FailureApp doesn't satisfy the grantCheck the app supports app protection and the user is in an app protection policy assignment
Report-only: Not appliedConditions not met, such as a desktop platform or excluded userConfirm that is intended
Report-only: User action requiredUser would be prompted for somethingReview which control would prompt

Step 5: Cut over and clean up

All Conditional Access policies that apply to a sign-in must be satisfied. While the old and new policies are both on, a sign-in needs an approved client app and an app protection policy, which the core Microsoft apps with an assigned app protection policy satisfy.

  1. Set the new policy's Enable policy to On.
  2. Check sign-ins from a few pilot users on iOS and Android.
  3. Open the old policy and set it to Off. Disabling is still allowed for read-only policies.
  4. Keep the disabled policy for a short rollback window, then delete it. Policies that include the retired grant can't be edited, so a deleted one can't be recreated; your JSON backup is your record.

Repeat for each policy from Step 1. App protection is one control within a broader access model; for how it fits alongside device compliance and network controls, see Zero Trust enterprise remote access architecture.

Troubleshooting

Symptom or errorLikely causeFix
Old policy can't be editedPolicies with the approved client app grant are read-only since June 30, 2026Create a replacement policy instead
AADSTS53002 ApplicationUsedIsNotAnApprovedAppThe old approved client app policy is still enabled and the user's app isn't approvedFinish the cut-over and disable the old policy
AADSTS53003 BlockedByConditionalAccessA policy blocked the sign-inOpen the sign-in log entry and check which policy failed
Android user sent to the store during sign-inCompany Portal, the broker for the new grant, isn't installedInstall Company Portal; Authenticator alone isn't the broker for this grant on Android
Report-only Failure for a licensed user in Outlook or TeamsNo app protection policy has reached the app yet, or the user isn't in an assignmentCheck the app protection assignment; the user sees a notification when the policy applies
Kaizala, Skype for Business or Visio blockedThese apps don't support the app protection grantMove users to supported apps
Content in an embedded web view failsWeb views hosted outside Microsoft Edge don't satisfy these policiesOpen the content in Edge or the native app
Edge InPrivate blocked while the old policy is onConditional Access can't consider Microsoft Edge in InPrivate mode an approved client appUse a normal Edge profile, and finish the cut-over

Checklist

  • Every policy with approvedApplication listed and backed up to JSON.
  • App protection policies for iOS/iPadOS and Android assigned to all affected users, with time to apply before cut-over.
  • Use of Kaizala, Skype for Business and Visio on mobile checked.
  • Replacement policies created with matching assignments and conditions, break-glass accounts excluded, and Require app protection policy as the grant.
  • Report-only results reviewed in sign-in logs or policy impact.
  • New policies on, old policies off, then deleted after the rollback window.
  • Android users aware they need Company Portal.

References

Questions people ask

What happened to Require approved client app on June 30, 2026?

The control and every Conditional Access policy that uses it moved to a read-only state. You can no longer create policies with it or edit those policies, but you can still disable or delete them, and enabled policies continue to be enforced.

Why can't I just edit my old policy to add Require app protection policy?

Because policies that include the approved client app grant became read-only on June 30, 2026. Microsoft's earlier advice to add the app protection grant with Require one of the selected controls only worked before that date. Now you create a new policy and retire the old one.

Which apps don't support Require app protection policy?

Microsoft lists Kaizala, Skype for Business and Visio as not supporting the Require app protection policy grant. Users who reach your resources from those apps on iOS or Android are blocked by a policy that requires app protection.

Do Android users need a different broker app for the new grant?

Possibly. For the app protection policy grant, Microsoft documents Microsoft Authenticator as the broker on iOS and Microsoft Company Portal on Android. Android users who only have Authenticator are redirected to the store to install Company Portal.

Conditional AccessMicrosoft IntuneApp Protection PoliciesEntra ID
  1. Azure point-to-site VPN with Entra ID sign-in, MFA and the Azure VPN Client

    Configure an Azure VPN Gateway point-to-site connection that signs users in with Microsoft Entra ID, enforce MFA, and deploy the Azure VPN Client profile with Intune.

  2. Silent BitLocker encryption with Intune and recovery key escrow to Entra ID

    Encrypt Windows devices with no user prompts through an Intune disk encryption policy, and make BitLocker wait until the recovery password is stored in Microsoft Entra ID.

  3. Windows Autopilot error codes: fix 0x80180014, 0x800705b4 and more

    Look up Windows Autopilot and Intune enrollment error codes, including 0x80180014, 0x800705b4, 0x801c03ea and 80180018, and apply the fix Microsoft documents for each.