Skip to content

Ulysses Neves

Microsoft Entra ID, authentication, and hybrid identity troubleshooting.

Menu
  • Home
  • Microsoft Azure
  • Microsoft AD FS
  • Microsoft 365
  • Contact
  • Troubleshooting Index
Menu
Conditional Access report-only: a successful sign-in can coexist with a report-only policy failure.

Conditional Access report-only: why a successful sign-in can show a policy failure

Posted on October 9, 2026

Hello everyone. A user opens SharePoint successfully. You find the sign-in in Microsoft Entra, open its policy details, and see Failure. Did the policy break? Did SharePoint ignore it?

In this lab, neither happened. Alex reached SharePoint, and the selected policy recorded Report-only: Failure. Those two observations answer different questions. Let me show you the configuration, the evidence, and the comparison that made the result easier to interpret.

Lab disclosure: This walkthrough uses synthetic test accounts and data in a dedicated non-production lab. No customer or production data was used. Identifying environment details have been redacted.

Evidence scope: The screenshots come from the lab run on September 9, 2026. They are cropped, arranged and annotated for readability; account identifiers are masked or identifying columns are omitted. The displayed product results have not been rewritten. This article uses screenshots only.

Start with two questions, not one red label

Did the sign-in succeed? Read the sign-in event status. What did this particular policy evaluate? Go to Entra ID → Monitoring & health → Sign-in logs, select the matching interactive sign-in event for the test user and SharePoint resource, then open Report-only and inspect the named policy. Check the user, resource and timestamp so you compare results from the same event. Microsoft documents that report-only policies are evaluated without being enforced. reference: (Conditional Access report-only mode) and (Microsoft Entra sign-in logs)

Microsoft states: During sign-in, the system evaluates policies in report-only mode but doesn’t enforce them. reference: (Conditional Access report-only mode)

That distinction is the whole point of this exercise. We deliberately used a Block access control in a report-only policy, rather than turning a blocking policy on.

The small lab behind the screenshots

  • Alex: a synthetic, non-admin user included in the test policy.
  • Jamie: a second synthetic, non-admin user not included in that policy.
  • Target: the existing Office 365 SharePoint Online resource in the lab.
  • Licensing: both test users received an existing Microsoft 365 E5 license. The tenant showed Entra ID P2; basic Conditional Access requires P1, so P2 was not a special requirement for this example. reference: (Conditional Access overview)
  • Unchanged: the four pre-existing Conditional Access policies. No new Azure subscription, VM or Log Analytics resource was created for the walkthrough.

Use a dedicated lab and synthetic accounts if you repeat this. Keep administrative and recovery accounts out of the test’s included scope. Microsoft warns that Block access requires careful application and recommends testing before enforcement. reference: (Conditional Access grant controls)

Build the policy without enforcing it

The test users were created as internal users, with no administrative role or group assignment. Their usage locations were set and their licenses were active before the sign-ins. Microsoft’s user-creation guidance covers that account setup. reference: (Create users in Microsoft Entra ID)

  1. In the Microsoft Entra admin center, open Entra ID → Conditional Access → Policies and select New policy. reference: (Conditional Access overview)
  2. Name the policy LAB-BLOG-CA-ReportOnly-SharePoint.
  3. Under Users → Include → Select users and groups, select only the Alex test account. Jamie must remain outside the included scope.
  4. Under Target resources → Include → Select resources, select only Office 365 SharePoint Online. reference: (Conditional Access target resources)
  5. Under Grant, select Block access. Leave additional conditions and session controls unconfigured for this experiment. reference: (Conditional Access grant controls)
  6. Leave Enable policy set to Report-only. Review the selected user, resource, control and state before creating the policy; reopen it afterward to confirm the saved configuration. reference: (Conditional Access report-only mode)

Do not switch this demonstration policy to On. The objective is to observe evaluation, not to block the test user. We never enabled enforcement.

Annotated saved lab policy showing report-only mode, one included user, one resource and Block access.
Figure 1. The saved policy was report-only throughout the experiment. The notes identify Alex and SharePoint as the selected scope.

Why only SharePoint? It keeps this teaching example narrow. It is not a production Microsoft 365 protection design: Microsoft recommends the Office 365 grouping when protecting the suite to account for service dependencies. reference: (Conditional Access target resources)

Alex: a successful sign-in and a report-only failure

We opened the lab SharePoint site as Alex and confirmed the account shown by SharePoint. Password entry and MFA were kept out of the captures.

In Alex’s interactive sign-in logs, the Office 365 SharePoint Online event at 18:27:03 Europe/London showed Success, with error code 0. Opening that same event’s Report-only tab showed LAB-BLOG-CA-ReportOnly-SharePoint, the Block control, and Report-only: Failure.

Alex's SharePoint event shows Success; the same event's report-only policy result shows Failure.
Figure 2. Two cropped views of Alex’s SharePoint sign-in: the event succeeded, while the test policy recorded Report-only: Failure. Identifying columns and unrelated rows are omitted.

This is consistent with Microsoft’s documented example of report-only failure: the policy applies to the user and a Block control is configured. It is not evidence that the sign-in itself failed. Because this policy was report-only, it did not enforce the block. reference: (Conditional Access report-only mode)

Jamie: use a second account to check the scope

We then signed in as Jamie, confirmed Jamie’s SharePoint identity, and opened the same lab root site. Jamie’s Office 365 SharePoint Online event at 18:32:55 Europe/London also showed Success and error code 0.

For that event, the same named policy showed Report-only: Not applied. Jamie was not in the policy’s included user list. This illustrates a scope mismatch, not a successful test of a grant control. Microsoft’s result definitions distinguish Not applied from Success. reference: (Conditional Access report-only mode)

Jamie's SharePoint event shows Success; the same policy shows Report-only: Not applied because Jamie is outside its scope.
Figure 3. Jamie reached the same lab SharePoint site. The selected policy recorded Report-only: Not applied for Jamie’s SharePoint event.
Lab accountSign-in resultReport-only policy result
Alex (in scope)SuccessFailure: Block control evaluated, not enforced
Jamie (outside scope)SuccessNot applied
Both users reached SharePoint, but only Alex matched this test policy.

What I would check before troubleshooting the wrong thing

  • Confirm the account and resource. Jamie’s sign-in produced several related application events. We used the Office 365 SharePoint Online event for this comparison, not just the first successful row. Microsoft distinguishes the identity, client application and target resource in sign-in analysis. reference: (Microsoft Entra sign-in logs)
  • Keep the event and policy together. Open Report-only from the selected sign-in and check the exact policy name; do not compare unrelated events. reference: (Conditional Access report-only mode)
  • Do not interpret Not applied as control success. Check whether the user and target match the policy’s configuration. reference: (Conditional Access report-only mode)
  • Keep other enforcement in mind. A report-only policy does not enforce its controls, but other active policies still matter. We left the existing policies unchanged. reference: (Conditional Access report-only mode)

The events were not visible immediately in our first log checks. We refreshed and waited for the actual entries rather than filling in an expected result. That is an observation from this run, not a guaranteed log-delivery interval.

One important caveat: report-only is not a blanket promise of no user-facing effects for every policy. Microsoft documents device-certificate prompts for report-only policies requiring compliant devices on macOS, iOS and Android. This lab did not use a device-compliance control. reference: (Conditional Access report-only mode)

What this lab does and does not prove

This run demonstrates the difference between an observed sign-in outcome and the evaluation result of one report-only policy. It does not demonstrate enforcement after switching On, and it does not cover every Conditional Access control or application. We did not capture a pre-policy sign-in baseline.

At the end of the run, the test policy remained Report-only; the synthetic accounts and licenses were retained for review. Cleanup has not been performed. In your own lab, include removal of test-only objects and reclaiming their licenses in your separately approved cleanup plan.

My takeaway: before troubleshooting a red policy result, ask which result am I reading, for which user and resource, and in which policy state? That small pause can keep an expected report-only finding from turning into an unnecessary configuration change.

Original Microsoft sources

Product behavior and guidance above are grounded in these Microsoft documents, reviewed on September 9, 2026. The prose, screenshots and annotations are original to this lab walkthrough.

  • reference: (Report-only mode and policy evaluation results)
  • reference: (Conditional Access overview and license requirements)
  • reference: (Target resources and Microsoft 365 service dependencies)
  • reference: (Grant controls: Block access)
  • reference: (Microsoft Entra sign-in logs)
  • reference: (Create users in Microsoft Entra ID)

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Recent Posts

  • Conditional Access report-only: why a successful sign-in can show a policy failure October 9, 2026
  • Microsoft Entra SMS and Voice Retirement: An Admin Preparation Checklist September 24, 2026
  • Microsoft Defender for Identity domain investigation: six questions to ask first September 10, 2026
  • Microsoft Entra Kerberos key rotation: what changes—and what administrators should check September 6, 2026
  • Microsoft Authenticator Will Block Jailbroken Devices in 2026 — What You Need to Know March 17, 2026

Archives

  • October 2026
  • September 2026
  • March 2026
  • September 2024
  • April 2024
  • February 2024
  • December 2023
  • September 2023
  • July 2023
  • June 2023
  • May 2023
  • April 2023
  • March 2023
  • February 2023
  • January 2023
  • December 2022
  • October 2022
  • September 2022
  • August 2022
  • July 2022
  • June 2022
  • May 2022
  • April 2022
  • March 2022
  • February 2022
  • January 2022
  • December 2021
  • November 2021
  • October 2021
  • September 2021
  • August 2021
  • July 2021
  • June 2021
  • May 2021
  • April 2021
  • March 2021
  • February 2021
  • January 2021
  • December 2020
  • November 2020
  • October 2020
  • September 2020
  • August 2020
  • July 2020
  • June 2020
  • May 2020
  • April 2020
  • March 2020
  • February 2020
  • January 2020
  • December 2019
  • November 2019
  • October 2019
  • September 2019
  • August 2019
  • July 2019

Tags

#aaddownleveldevice #adfs #adfscertificate #adfscertificates #adfsmfaadapter #azureauth #azureCA #azuredevice #capolicy #cloudsummit2021 #conditionalaccess #conditionalaccesspolicy #deviceregistration #farmbehavior #gopasswordless #mfaserver #msidentity #namedlocation #securingazure #securingazuread #sslprivatekey #troubleshootingadfs #troubleshootingwaptrust #tshootadfs #waptrust #webapplicationproxy #WHFBcerttrust #whfbdeployment #WHfBhybridsetup #WHfBprovisioning #widdatabase adconnect AD FS authenticationstrength az500 azurepim Azure security cloudsecurity microsoft365 Microsoft Azure Microsoft Entra hybrid join Microsoft Entra ID Microsoft Entra MFA PowerShell WHfB
©2026 Ulysses Neves | Design: Newspaperly WordPress Theme
Ulysses Neves
Gerenciar Consentimento de Cookies
Para fornecer as melhores experiências, usamos tecnologias como cookies para armazenar e/ou acessar informações do dispositivo. O consentimento para essas tecnologias nos permitirá processar dados como comportamento de navegação ou IDs exclusivos neste site. Não consentir ou retirar o consentimento pode afetar negativamente certos recursos e funções.
Funcional Always active
O armazenamento ou acesso técnico é estritamente necessário para a finalidade legítima de permitir a utilização de um serviço específico explicitamente solicitado pelo assinante ou utilizador, ou com a finalidade exclusiva de efetuar a transmissão de uma comunicação através de uma rede de comunicações eletrónicas.
Preferências
O armazenamento ou acesso técnico é necessário para o propósito legítimo de armazenar preferências que não são solicitadas pelo assinante ou usuário.
Estatísticas
O armazenamento ou acesso técnico que é usado exclusivamente para fins estatísticos. O armazenamento técnico ou acesso que é usado exclusivamente para fins estatísticos anônimos. Sem uma intimação, conformidade voluntária por parte de seu provedor de serviços de Internet ou registros adicionais de terceiros, as informações armazenadas ou recuperadas apenas para esse fim geralmente não podem ser usadas para identificá-lo.
Marketing
O armazenamento ou acesso técnico é necessário para criar perfis de usuário para enviar publicidade ou para rastrear o usuário em um site ou em vários sites para fins de marketing semelhantes.
  • Manage options
  • Manage services
  • Manage {vendor_count} vendors
  • Read more about these purposes
Ver preferências
  • {title}
  • {title}
  • {title}