首页 > 解决方案 > 为什么我不能查询其他用户的2FA注册详情?

问题描述

我正在尝试检查 Azure 上的哪些用户在其帐户上启用了 2FA。

我在网上找到了一些声称可以实现此目的的示例,但它似乎仅在查询自己时才有效-我无法检查其他用户。

所以如果我跑

Import-Module MSOnline
$user = "bassie@domain.com"
$pass= convertto-securestring "Password123" -asplaintext -force
$mycred = new-object -typename System.Management.Automation.PSCredential -argumentlist $user,$pass
$O365Cred = Get-Credential $mycred
Connect-MsolService -Credential $O365Cred

$user = Get-MsolUser -UserPrincipalName bassie@domain.com
$user.StrongAuthenticationUserDetails

我可以看到StrongAuthenticationUserDetails包含

ExtensionData          : System.Runtime.Serialization.ExtensionDataObject
AlternativePhoneNumber : 
Email                  : 
OldPin                 : 
PhoneNumber            : +27 1111111111
Pin                    : 

这是有道理的,因为我的帐户已通过选择的短信方法激活了 2FA,所以我希望在那里看到那个电话号码。所有其他 Strongauthentication-` 属性都是空白的。

但是,如果我尝试为任何其他用户获取相同的信息,StrongAuthenticationUserDetails则始终为空白。

为什么是这样?我认为它与权限有关,但如果是这样,哪些权限?我在哪里可以找到这些信息?

我需要做的就是检查谁关闭了 2FA,这样我们就可以窃听这些用户并让他们注册。

标签: .netpowershellazuremulti-factor-authentication

解决方案


你是对的,你应该有Global administrator角色,然后你可以阅读该信息。

您可以通过 Azure 门户检查权限:Azure Active Directory-> Users-> Directory Role

在此处输入图像描述


推荐阅读