# Entra Private Access applications should be covered by a Conditional Access policy that requires a managed device

Every Entra Private Access (and Quick Access) application should be protected by an enabled Conditional Access policy that requires a managed device -…

Source: https://maester.dev/docs/tests/MT.1188

<!-- This file is generated by website/scripts/generate-test-docs.mjs. Do not edit manually. -->

<div class="test-byline"><div class="test-byline-avatars"><a class="test-byline-avatar test-byline-avatar--author" href="/contributors/crmhh" title="Christopher Brumm · Original author"><img src="https://github.com/crmhh.png" alt="Christopher Brumm" width="28" height="28" loading="lazy" decoding="async" /></a></div><div class="test-byline-meta"><span class="test-byline-text">Contributed by <a href="/contributors/crmhh">Christopher Brumm</a></span><a class="test-byline-link" href="/contributors">All contributors →</a></div></div>

<p class="test-part">Part of <a href="/docs/tests/maester">Maester</a> · Entra ID · Global Secure Access · <a href="/docs/tests">All checks</a></p>

```powershell title="Run this check"
Invoke-Maester -TestId MT.1188 -IncludePreview
```

## Overview

Every Entra Private Access (and Quick Access) application should be protected by an enabled Conditional Access policy that requires a managed device - either by targeting the application directly or via All cloud apps. This ensures private applications are only reachable from managed endpoints.

A policy satisfies the requirement when it grants **Require device to be marked as compliant** (Intune compliant) or **Require Microsoft Entra hybrid joined device** (`domainJoinedDevice`).

This check evaluates application coverage only; it does not evaluate whether the policy applies to every user of the app.

#### Remediation action

1. Sign in to the [Microsoft Entra admin center](https://entra.microsoft.com) as at least a **Conditional Access Administrator**.
2. Browse to **Entra ID** > **Conditional Access** > **Policies**.
3. Create or edit an enabled policy that targets the listed Private Access applications (or **All cloud apps**) and, under **Grant**, requires a **compliant** or **Microsoft Entra hybrid joined** device.
4. Set **Enable policy** to **On** and save.

#### Related links

* [Apply Conditional Access to Private Access apps](https://learn.microsoft.com/entra/global-secure-access/how-to-target-resource-private-access-apps)
* [Require compliant or hybrid joined device](https://learn.microsoft.com/entra/identity/conditional-access/policy-all-users-device-compliance)

## Details

<details>
<summary>Every attribute of this check</summary>

| Field | Value |
| --- | --- |
| Test ID | MT.1188 |
| Severity | Medium |
| Suite | Maester |
| Product | Entra ID |
| Feature | Global Secure Access |
| Area | Access control |
| Resource type | ServicePrincipal |
| User impact | Medium |
| Implementation cost | Medium |
| MITRE ATT&CK | T1078.004 Cloud Accounts, T1133 External Remote Services |
| Supports controls | nist-800-53-r5:AC-17, nist-800-53-r5:IA-3 |
| PowerShell test | [Test-MtGsaPrivateAccessAppCompliantDevice](https://github.com/maester365/maester/blob/main/tests/maester/global-secure-access/Test.MT.1188.ps1) |
| Services | Graph |
| Compatible licenses | AAD_PREMIUM |
| Lifecycle | Preview |

</details>

## Source

- Test: [`tests/maester/global-secure-access/Test.MT.1188.ps1`](https://github.com/maester365/maester/blob/main/tests/maester/global-secure-access/Test.MT.1188.ps1)
- Documentation: [`tests/maester/global-secure-access/Test.MT.1188.md`](https://github.com/maester365/maester/blob/main/tests/maester/global-secure-access/Test.MT.1188.md)
