問題描述

使用PowerShell Microsoft Graph 命令來獲取用户認證的電話信息時,發現 Get-MgUserAuthenticationPhoneMethod  命令在中國區 Azure上不可用。報錯:Get-MgUserAuthenticationPhoneMethod : Resource not found for the segment 'phoneMethods'.

錯誤信息:

Get-MgUserAuthenticationPhoneMethod
cmdlet Get-MgUserAuthenticationPhoneMethod at command pipeline position 1
Supply values for the following parameters:
UserId:***@***.partner.onmschina.cn

Get-MgUserAuthenticationPhoneMethod : Resource not found for the segment 'phoneMethods'.
Status: 400 (BadRequest)
ErrorCode: BadRequest
Date: 2025-11-18T12:01:26
Headers:
Transfer-Encoding : chunked
Vary : Accept-Encoding
Strict-Transport-Security : max-age=31536000
request-id : 83*************a78
client-request-id :  83*************a78
x-ms-ags-diagnostic : {"ServerInfo":{"DataCenter":"China
North","Slice":"E","Ring":"5","ScaleUnit":"000","RoleInstance":"BJ1NEPF00000A4C"}}
Date : Tue, 18 Nov 2025 12:01:26 GMT
At line:1 char:1
+ Get-MgUserAuthenticationPhoneMethod
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: ({ UserId = *****... , Headers = }:<>f__AnonymousType112`10) [Get-MgUserAuthenticationPhoneMethod
_List], Exception
+ FullyQualifiedErrorId : BadRequest,Microsoft.Graph.PowerShell.Cmdlets.GetMgUserAuthenticationPhoneMethod_List

錯誤截圖:

【Azure Developer】解決在中國區 Microsoft Graph 命令Get-MgUserAuthenticationPhoneMethod 不可用的問題 _Graph

 

問題解答

這是因為中國區Azure的特殊性導致的,這個命令在正式版的模板代碼中( Microsoft.Graph) 還沒有被支持,但如果使用Beta版本,就可以成功。

注意:在使用Beta版本命令前,需要卸載 Microsoft.Graph, 安裝Microsoft.Graph.Beta 後,重新登錄中國區Azure,方可使用Beta命令:Get-MgBetaUserAuthenticationPhoneMethod

 

需要執行指令為:

## 卸載以及重新安裝Beta版

uninstall-Module Microsoft.Graph

install-Module Microsoft.Graph.Beta -Repository PSGallery -Force

 

## 斷開與Graph的連接

disconnect-graph

## 重新登錄Graph

connect-MgGraph -Scopes "User.ReadWrite.All", "UserAuthenticationMethod.ReadWrite.All", "UserAuthenticationMethod.ReadWrite" -ClientId "your entra id registered application client id" -Environment China -TenantID "your tenant id"

## 獲取用户Phone Method信息

Get-MgBetaUserAuthenticationPhoneMethod 

 

最終效果為:

【Azure Developer】解決在中國區 Microsoft Graph 命令Get-MgUserAuthenticationPhoneMethod 不可用的問題 _Graph_02

所以,解決這個問題的替代方案為:使用Beta版本的指令。同理,如果需要使用REST API來獲取信息,可以PowerShell的命令中加上 -debug 參數,查看這些命令輸出日誌中所發起的API請求,即可反推出正確的API Endpoint!

 

 

參考資料

管理 Microsoft Entra 多重身份驗證的身份驗證方法 :https://learn.microsoft.com/zh-cn/entra/identity/authentication/howto-mfa-userdevicesettings#manage-methods-using-powershell

 


當在複雜的環境中面臨問題,格物之道需:濁而靜之徐清,安以動之徐生。 雲中,恰是如此!