首页 > 其他分享 >【Azure Entra ID】如何在中国区获取用户 StrongAuthenticationUserDetails 和 StrongAuthenticationMethods 信息

【Azure Entra ID】如何在中国区获取用户 StrongAuthenticationUserDetails 和 StrongAuthenticationMethods 信息

时间:2023-12-06 22:32:59浏览次数:36  
标签:Entra StrongAuthenticationMethods StrongAuthenticationUserDetails 用户 Connect Mso

问题描述

如何在中国区获取用户 StrongAuthenticationUserDetails 和 StrongAuthenticationMethods 信息 ?

  • StrongAuthenticationUserDetails :包含有关用户 MFA 设置的信息,例如他们首选的身份验证方法、电话号码和电子邮件地址。系统使用此信息在用户尝试访问受保护资源时验证用户的身份。
  • StrongAuthenticationMethods  : 是一个用户对象的属性,它包含了用户已注册的多重身份验证方法的信息。

PS: 中国区Azure上无法通过 Graph API (: https://graph.chinacloudapi.cn/myorganization/users('XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX')?api-version=1.6-internal) 获取MFA的信息


问题解答

经过调查,可以通过PowerShell脚本来实现获取用户在MFA中的信息, 使用MS Online PowerShell module, 通过 Connect-MsolService 登录Azure AD(Azure Entra ID)后,然后执行 get-msoluser 获取User

第一步:安装 msonline module

PS C:\> Connect-MsolService -AzureEnvironment AzureChinaCloud 
Connect-MsolService : The term 'Connect-MsolService' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if 
a path was included, verify that the path is correct and try again.
At line:1 char:1
+ Connect-MsolService -AzureEnvironment AzureChinaCloud
+ ~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (Connect-MsolService:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

遇见以上错误,则需要安装 MSOnline模块(需要在Administrator模式下安装)。

Install-Module -Name MSOnline

【Azure Entra ID】如何在中国区获取用户 StrongAuthenticationUserDetails 和 StrongAuthenticationMethods 信息_Azure

 

第二步:连接到中国区Azure (并交互式登录用户名和密码)

Connect-MsolService -AzureEnvironment AzureChinaCloud

OR 通过无交互式方式登录(无弹窗)

$azureUsername=‘{[email protected]}’
$azurePassword = ConvertTo-SecureString "<Password>" -AsPlainText -Force
$psCred = New-Object System.Management.Automation.PSCredential($azureUsername , $azurePassword)
Connect-MsolService -Credential $psCred

 

第三步: 获取用户 StrongAuthenticationUserDetails 和 StrongAuthenticationMethods  属性

$user01 =get-msoluser -User <UPN: User principal name, e.g:[email protected]>

 $am = $user01.StrongAuthenticationMethods
 $am

 $ud = $user01.StrongAuthenticationUserDetails
 $ud

【Azure Entra ID】如何在中国区获取用户 StrongAuthenticationUserDetails 和 StrongAuthenticationMethods 信息_Azure_02

 

附录:完整的PowerShell Script

#Install MS Online Module

Install-Module -Name MSOnline

 

# Login

Connect-MsolService -AzureEnvironment AzureChinaCloud 

 

# Login with username & password

$azureUsername=‘{[email protected]}’

$azurePassword = ConvertTo-SecureString "<Password>" -AsPlainText -Force

$psCred = New-Object System.Management.Automation.PSCredential($azureUsername , $azurePassword)

Connect-MsolService -Credential $psCred

 

# get user StrongAuthenticationMethods

$user01 =get-msoluser -User <UPN: User principal name, e.g:[email protected]>

$am=user01.StrongAuthenticationMethods

$am

 

 

# get user StrongAuthenticationUserDetails

 

$ud=user01.StrongAuthenticationUserDetails

$ud

 

参考资料

MS Online: https://www.powershellgallery.com/packages/MSOnline/1.1.183.81

Connect-MsolService :https://learn.microsoft.com/en-us/powershell/module/msonline/connect-msolservice?view=azureadps-1.0

 

 


 

当在复杂的环境中面临问题,格物之道需:浊而静之徐清,安以动之徐生。 云中,恰是如此!

标签:Entra,StrongAuthenticationMethods,StrongAuthenticationUserDetails,用户,Connect,Mso
From: https://blog.51cto.com/u_13773780/8711423

相关文章

  • ReenTrantLock可重入锁(和synchronized的区别)总结
    可重入性:从名字上理解,ReenTrantLock的字面意思就是再进入的锁,其实synchronized关键字所使用的锁也是可重入的,两者关于这个的区别不大。两者都是同一个线程没进入一次,锁的计数器都自增1,所以要等到锁的计数器下降为0时才能释放锁。锁的实现:Synchronized是依赖于JVM实现的,而ReenTra......
  • ReentrantReadWriteLock读写锁
    ReentrantReadWriteLock读写锁乐观锁和悲观锁乐观锁乐观锁,就是给需要共享的数据,添加一个版本号version,例如1,每次有线程更新共享数据后,version+1,每次线程进行数据更新时,要比较当前线程持有的数据的版本号,相等则修改,不相等则不修改,支持并发访问。悲观锁悲观锁,就是每次只能有一......
  • ReentrantLock源码笔记 - 获取锁(JDK 1.8)
    ReentrantLock学习-获取锁(JDK1.8)ReentrantLock提供非公平锁与公平锁两种加锁方式,默认加锁方式为非公平锁。ReentrantLock类的结构为:从图中可以看出,ReentrantLock类包含三个静态内部类:SyncNonfairSyncFairSync其中Sync类继承AbstractQueuedSynchronize(AQS),Nonf......
  • ReentrantLock源码笔记 - 释放锁(JDK 1.8)
    ReentrantLock源码学习-释放锁(unlock)上次谈到了利用ReentrantLock的非公平和公平加锁方式,那么接下来看看释放锁的流程首先调用ReentrantLock的unlock方法publicvoidunlock(){sync.release(1);}然后会调用AbstractQueuedSynchronizer(AQS)的release方法,在这个方法......
  • 一文读懂ReentrantLock在多线程编程中的作用和优点
    引言在当今这个数字化时代,软件开发已经离不开多线程编程。但是,多线程编程也带来了一系列复杂性和挑战,其中最关键的一个问题就是线程同步和互斥。为了应对这个问题,Java语言提供了一些工具,其中最强大的工具之一就是ReentrantLock。本文将对ReentrantLock进行深入探讨,介绍它在多线程编......
  • 可重入锁ReentrantLock在性能测试常见用法
    在进行Java多线程编程的过程中,始终绕不开一个问题:线程安全。一般来说,我们可以通过对一些资源加锁来实现,大多都是通过synchronized关键字实现。在做性能测试时,如果TPS或者QPS要求没有特别高,synchronized一招鲜基本也能满足大部分的需求了。对于一招鲜无法很好解决的问题,就需要......
  • 17-ReentrantLock和java中的aqs
    一、aqsAQS是AbstractQueuedSynchronizer的缩写,是一个用来构建锁和同步器的框架,是线程安全问题(原子性)的一种解决方案通过它可以实现很多不同类型的锁,例如ReentrantLock。主要内容:用state属性来表示资源的状态(分独占模式和共享模式),子类需要定义如何维护这个状态,控......
  • 【Java 并发编程】ReentrantLock
    目录ReentrantLock公平锁和非公平锁synchronized和ReentrantLock有什么区别?ReentrantLockReentrantLock是一个可重入的互斥锁,又被称为“独占锁”。ReentrantLock类实现了Lock,它拥有与synchronized相同的并发性和内存语义,但是添加了类似锁投票、定时锁等候和可中断锁等......
  • ReentrantLock怎么实现公平锁的?
    newReentrantLock()构造函数默认创建的是非公平锁NonfairSyncpublicReentrantLock(){ sync=newNonfairSync();}同时也可以在创建锁构造函数中传入具体参数创建公平锁FairSyncReentrantLocklock=newReentrantLock(true);---ReentrantLock//true代表公平锁,fa......
  • ReentrantLock实现原理
    ReentrantLock是可重入的独占锁,只能有一个线程可以获取该锁,其它获取该锁的线程会被阻塞而被放入该锁的阻塞队列里面。看看ReentrantLock的加锁操作://创建非公平锁ReentrantLocklock=newReentrantLock();//获取锁操作lock.lock();try{//执行代码逻辑}catch(Except......