Azure CLI 中的 Microsoft Graph 移轉影響
由於 Azure Active Directory (Azure AD) Graph 已淘汰,基礎 Active Directory 圖形 API 會由 Azure CLI 2.37.0 中的 Microsoft Graph API 取代。
重大變更
如需基礎 API 和輸出 JSON 中斷性變更的差異,請參閱 Azure AD Graph 與 Microsoft Graph 之間的屬性差異。
例如,最未完成的變更是 id
取代 objectId
Graph 物件的輸出 JSON 中的 屬性。
命令引數和行為中斷性變更會列在下一節中。
az ad app create/update
- 分割
--reply-urls
成--web-redirect-uris
和--public-client-redirect-uris
- 將 取代
--homepage
為--web-home-page-url
- 將 取代
--available-to-other-tenants
為--sign-in-audience
- 將 取代
--native-app
為--is-fallback-public-client
- 將 取代
--oauth2-allow-implicit-flow
為--enable-access-token-issuance
- 新增
--enable-id-token-issuance
以設定web/implicitGrantSettings/enableIdTokenIssuance
- 移除
--password
和--credential-description
。 用來az ad app credential reset
讓 Graph 服務為您建立密碼 ( https://github.com/Azure/azure-cli/issues/20675 ) - 新增
--key-display-name
以設定keyCredential
'sdisplayName
az ad app permission grant
- 已移除
--expires
--scope
不再預設為user_impersonation
,現在為必要專案
az ad app credential reset
- 將 取代
--credential-description
為--display-name
( https://github.com/Azure/azure-cli/issues/20561 ) - 移除
--password
。 若未指定憑證引數,Graph 服務會為您建立密碼( https://github.com/Azure/azure-cli/issues/20675 )
az ad sp delete
- 此命令不再刪除對應的應用程式。 使用
az ad app delete
明確刪除應用程式 ( https://github.com/Azure/azure-cli/issues/8467 ) - 此命令不再刪除服務主體的對應角色指派。 用來
az role assignment delete
明確刪除角色指派 ( https://github.com/Azure/azure-cli/issues/20805 )
az ad sp credential
- 此命令群組現在在服務主體上運作,而不是應用程式 ( https://github.com/Azure/azure-cli/issues/11458 )
az ad sp credential reset
- 將 取代
--name
為--id
- 移除
--password
。 若未指定憑證引數,Graph 服務會為您建立密碼( https://github.com/Azure/azure-cli/issues/20675 )
az ad user create
- 將 取代
--force-change-password-next-login
為--force-change-password-next-sign-in
az ad user update
- 將 取代
--force-change-password-next-login
為--force-change-password-next-sign-in
az ad group get-member-groups
- 已移除
--additional-properties
az ad group member add
- 已移除
--additional-properties
已知問題
- 關於泛型更新引數,唯一支援的作業是在
--set
Graph 物件的根層級上。 由於基礎結構變更,目前在子層級上使用--add
或--remove
--set
無法運作。 針對不支援的案例,您可以使用az rest
直接呼叫 Microsoft Graph API 。 您可以在 中找到 https://github.com/Azure/azure-cli/issues/22580 範例。 - Azure Stack 環境中沒有 Microsoft Graph 支援且
az role
失敗的az ad
Microsoft Graph 相關命令。 針對 Azure Stack 環境使用 Azure CLI 2.36.0 或舊版。
安裝舊版
如果您尚未準備好進行移轉,例如缺少 Microsoft Graph 許可權,則可以繼續使用 Azure CLI 版本 < = 2.36.0。 如果您已安裝 2.37.0,您可以在安裝檔 下 遵循[安裝特定版本] 區段之後復原至舊版(除了不支援安裝舊版的 Homebrew 除外)。
疑難排解
Graph 命令失敗並出現 AADSTS50005
或 AADSTS53000
您的租使用者可能有條件式存取原則,會封鎖使用裝置程式碼流程來存取 Microsoft Graph。 在這種情況下,請使用授權碼流程或服務主體來改為登入。 如需登入方法的詳細資訊,請參閱 使用 Azure CLI 登入。
Microsoft 租使用者 (72f988bf-86f1-41af-91ab-2d7cd011db47) 已設定這類條件式存取原則。
其他相關資訊
您可以在 上找到 Microsoft Graph 移 https://github.com/Azure/azure-cli/issues/22580 轉的詳細資訊。
提供意見反應
如果您有任何問題,請使用 命令回復 https://github.com/Azure/azure-cli/issues/22580 或建立新的問題 az feedback
。