Skip to content

🪲 Get-EntraAuthenticationMethodUserRegistrationDetailReport -All not handling paging correctly #1585

@Dale-Berta

Description

@Dale-Berta

Get-EntraAuthenticationMethodUserRegistrationDetailReport -All only returns the first page of results, 1080 entries. I'm expecting 2900+.

Thanks for reporting the bug. Please ensure you've gone through the following checklist before opening an issue:

  • Make sure you can reproduce this issue using the latest released version of Microsoft.Entra or Microsoft.Entra.Beta.
  • Please search the existing issues to see if there has been a similar issue filed.

Describe the bug

Get-EntraAuthenticationMethodUserRegistrationDetailReport -All is not handling paging correctly. In Microsoft.Entra.Reports.psm1, paging appears to be handled in a while loop at lines 279 through 285. The first test in the while() condition is variable
$response.PSObject.Properties["@odata.nextLink"] Stepped into this in debug. $response.PSObject.Properties["@odata.nextLink"] always evaluates as null. If I access it as $response["`@odata.nextLink"]
I get the link as shown in Debug Output below.
If I modify Microsoft.Entra.Reports.psm1 at line 279 and change the access of the nextLink, it works.

To Reproduce

Steps to reproduce the behavior:

  1. Execute Get-EntraAuthenticationMethodUserRegistrationDetailReport with -All in a subscription where more than 1080 enabled users have MFA registrations.
  2. There is no error; the results are incomplete.

Expected behavior

Results are returned for all enabled accounts.

Debug Output

⚠ ATTENTION: Be sure to remove any sensitive information that may be in the logs.
I have eliminated all but the first and last of the 1080 detail results; eliminated results replaced with an ellipsis, I've obfuscated identifying details of the two results that were kept.

Debug Output DEBUG: ============================ TRANSFORMATIONS ============================ DEBUG: Uri : /v1.0/reports/authenticationMethods/userRegistrationDetails?$select=* DEBUG: =========================================================================

DEBUG: GET /v1.0/reports/authenticationMethods/userRegistrationDetails?$select=* HTTP/1.1
HTTP: graph.microsoft.com
User-Agent: PowerShell/7.5.4 EntraPowershell/1.2.0 Get-EntraAuthenticationMethodUserRegistrationDetailReport

DEBUG: GET https://graph.microsoft.com/v1.0/reports/authenticationMethods/userRegistrationDetails?$select=*
HTTP/2.0 200 OK
Vary: Accept-Encoding
Strict-Transport-Security: max-age=31536000
request-id: 65d289d5-cd99-4a28-9cd3-a03e442566ad
client-request-id: a372d2aa-69de-49e7-8bc0-25263e17337e
x-ms-ags-diagnostic: {"ServerInfo":{"DataCenter":"Canada Central","Slice":"E","Ring":"3","ScaleUnit":"001","RoleInstance":"YT1PEPF00001F1F"}}
odata-version: 4.0
Date: Tue, 03 Feb 2026 20:24:50 GMT
Content-Type: application/json; odata.metadata=minimal; odata.streaming=true; IEEE754Compatible=false; charset=utf-8

{"@odata.context":"https://graph.microsoft.com/v1.0/$metadata#reports/authenticationMethods/userRegistrationDetails(*)","@odata.nextLink":"https://graph.microsoft.com/v1.0/reports/authenticationMethods/userRegistrationDetails?$select=*&$skiptoken=93fa8f18ea1da8a097cffcaeb0328f8aea77713c2cb28d1f7bdce2f70ac0135d_1080","value":[{"id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx","userPrincipalName":"xxxxxxxx.xxxx@xxx.xx","userDisplayName":"xxxxxxxxxxxxxxxxx","userType":"member","isAdmin":false,"isSsprRegistered":false,"isSsprEnabled":false,"isSsprCapable":false,"isMfaRegistered":false,"isMfaCapable":false,"isPasswordlessCapable":false,"methodsRegistered":[],"isSystemPreferredAuthenticationMethodEnabled":true,"systemPreferredAuthenticationMethods":[],"userPreferredMethodForSecondaryAuthentication":"none","lastUpdatedDateTime":"2026-02-02T20:25:03.5773244Z"},...,{"id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx","userPrincipalName":"xxxxxxxxxxxxxxxxxxxxxx","userDisplayName":"xxxxxxxxxxxxxxx","userType":"member","isAdmin":false,"isSsprRegistered":true,"isSsprEnabled":true,"isSsprCapable":true,"isMfaRegistered":true,"isMfaCapable":true,"isPasswordlessCapable":false,"methodsRegistered":["email","securityQuestion","mobilePhone","microsoftAuthenticatorPush","softwareOneTimePasscode"],"isSystemPreferredAuthenticationMethodEnabled":true,"systemPreferredAuthenticationMethods":["PhoneAppNotification"],"userPreferredMethodForSecondaryAuthentication":"push","lastUpdatedDateTime":"2026-02-02T20:32:00.9774576Z"}]}

Module Version

PS …\Scripts\MFA settings> Get-Module -Name Microsoft.Entra* -ListAvailable

Directory: C:\Program Files\WindowsPowerShell\Modules

ModuleType Version PreRelease Name PSEdition ExportedCommands


Script 1.2.0 Microsoft.Entra Core,Desk {Enable-EntraAzureADAlias, Get-EntraUnsupportedCommand, Tes…
Script 1.2.0 Microsoft.Entra.Applications Core,Desk {Add-EntraApplicationOwner, Add-EntraServicePrincipalDelega…
Script 1.2.0 Microsoft.Entra.Authentication Core,Desk {Add-EntraEnvironment, Connect-Entra, Disconnect-Entra, Fin…
Script 1.2.0 Microsoft.Entra.CertificateBasedAu… Core,Desk {Get-EntraUserCBAAuthorizationInfo, Get-EntraUserCertificat…
Script 1.2.0 Microsoft.Entra.DirectoryManagement Core,Desk {Add-EntraAdministrativeUnitMember, Add-EntraCustomSecurity…
Script 1.2.0 Microsoft.Entra.Governance Core,Desk {Get-EntraDirectoryRoleAssignment, Get-EntraDirectoryRoleDe…
Script 1.2.0 Microsoft.Entra.Groups Core,Desk {Add-EntraGroupMember, Add-EntraGroupOwner, Add-EntraLifecy…
Script 1.2.0 Microsoft.Entra.Reports Core,Desk {Get-EntraAuditDirectoryLog, Get-EntraAuditSignInLog, Get-E…
Script 1.2.0 Microsoft.Entra.SignIns Core,Desk {Get-EntraAuthorizationPolicy, Get-EntraConditionalAccessPo…
Script 1.2.0 Microsoft.Entra.Users Core,Desk {Get-EntraDeletedUser, Get-EntraInactiveSignInUser, Get-Ent…

Environment Data

PS …\Scripts\MFA settings> $PSVersionTable

Name Value


PSVersion 7.5.4
PSEdition Core
GitCommitId 7.5.4
OS Microsoft Windows 10.0.26100
Platform Win32NT
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1
WSManStackVersion 3.0

Screenshots

Additional context

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions