你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Azure 数字孪生已知问题

本文提供有关与 Azure 数字孪生关联的已知问题的信息。

Azure Digital Twins Explorer 不支持专用终结点

问题说明: 当尝试将 Azure Digital Twins Explorer 用于使用 专用链接 禁用公共访问的 Azure 数字孪生实例时,会显示错误。 你可能会看到显示 “提取模型时出错”的弹出窗口。

这会影响我吗? 原因 决议
如果将 Azure 数字孪生与专用终结点/专用链接配合使用,则尝试在 Azure Digital Twins Explorer 中查看实例时会受到此问题的影响。 Azure Digital Twins Explorer 不支持私有终结点。 可以在云中私下部署自己的 Azure 数字孪生资源管理器代码库版本。 有关如何执行此操作的说明,请参阅 Azure Digital Twins Explorer:在云中运行。 或者,可以改为使用 API 和 SDK 管理 Azure 数字孪生实例。

Cloud Shell 中的“400 客户端错误: 错误请求”

问题描述:在 运行的 Cloud Shell 中的命令可能会间歇性失败,并出现错误“400 客户端错误: 对 URL https://shell.azure.com 的请求错误”,后面接完整的堆栈跟踪http://localhost:50342/oauth2/token

这会影响我吗? 原因 决议
在 Azure 数字孪生中,此问题会影响以下命令组:

az dt route

az dt model

az dt twin
这是 Cloud Shell 中已知问题的结果: 从 Cloud Shell 获取令牌间歇性失败,出现 400 客户端错误:错误请求

这会影响 Azure 数字孪生实例身份验证令牌和 Cloud Shell 默认的基于托管标识的身份验证。

这不会影响来自 az dtaz dt endpoint 命令组的 Azure 数字孪生命令,原因是它们使用不同类型的身份验证令牌(基于 Azure 资源管理器),这不会对 Cloud Shell 的托管标识身份验证造成问题。
解决此问题的一种方法是在 Cloud Shell 中重新运行 az login 命令并完成后续登录步骤。 此操作会将您的会话从托管标识身份验证中切换出来,从而避免根本问题。 之后,可以重新运行命令。

否则,可以在 Azure 门户中打开 Cloud Shell 窗格,并从那里完成 Cloud Shell 工作。
Azure 门户图标栏中 Cloud Shell 图标的屏幕截图。

最后,另一种解决方案是在计算机上安装 Azure CLI ,以便在本地运行 Azure CLI 命令。 本地 CLI 不会遇到此问题。

Azure.Identity 1.2.0 上的交互式浏览器身份验证问题

问题说明: 使用 Azure.Identity 库版本 1.2.0 在 Azure 数字孪生应用程序中编写身份验证代码时,可能会遇到 InteractiveBrowserCredential 方法的问题。 在浏览器窗口中尝试进行身份验证时,此问题显示为“Azure.Identity.AuthenticationFailedException”的错误响应。 浏览器窗口可能无法完全启动,或显示成功对用户进行身份验证,而客户端应用程序仍然失败并出现错误。

这会影响我吗? 原因 决议
受影响的方法在以下文章中使用:

为客户端应用编写代码

编写应用身份验证码

Azure 数字孪生 API 和 SDK
某些用户在使用版本为 1.2.0 的Azure.Identity库时遇到了此问题。 若要解决它,请更新应用程序以使用 Azure.Identity。 更新库版本后,浏览器应按预期加载并进行身份验证。

Azure.Identity 1.3.0 上默认的 Azure 凭据身份验证问题

问题说明: 使用 Azure.Identity 库版本 1.3.0 编写身份验证代码时,某些用户遇到了许多示例中使用的 DefaultAzureCredential 方法的问题,这些 Azure 数字孪生文档。当代码尝试进行身份验证时,此问题显示为“Azure.Identity.AuthenticationFailedException: SharedTokenCacheCredential 身份验证失败”的错误响应。

这会影响我吗? 原因 决议
DefaultAzureCredential 用于此服务(包括身份验证)的大多数文档示例。 如果你正在使用版本 1.3.0 的 DefaultAzureCredential 库中的 Azure.Identity 编写身份验证代码,并看到此错误消息,那么该问题会影响到你。 这可能是由于该Azure.Identity库及其身份验证类DefaultAzureCredential的某些配置问题导致的。 此类是一个包装器,其中包含按顺序尝试的几种凭证类型。 当身份验证流达到 SharedTokenCacheCredential 类型时,可能会出现此问题。 解决此问题的一种策略是从凭证中排除 SharedTokenCacheCredential,如 出现的当前待解决的 Azure.Identity中所述。 可以通过使用以下可选参数实例化 SharedTokenCacheCredential 类从凭证中排除 DefaultAzureCredentialnew DefaultAzureCredential(new DefaultAzureCredentialOptions { ExcludeSharedTokenCacheCredential = true });
另一个选项是将应用程序更改为使用早期版本 Azure.Identity,例如 版本 1.2.3。 使用早期版本对 Azure 数字孪生没有功能影响,这使得它成为可接受的解决方案。

az dt 命令失败,使用旧的 Azure-IoT 扩展

问题描述:如果使用的是 0.26.0 版(可接受 0.26.0)之前的扩展版本azure-iot以及 Azure CLI 版本 2.70.0 或更高版本,则命令集中的 az dt CLI 命令将失败。 错误消息以 AttributeError 结尾:“CredentialAdaptor”对象没有属性“signed_session”。

这会影响我吗? 原因 决议
如果你使用的 Azure CLI 版本为 2.70.0 或更高版本,并且扩展版本azure-iot低于 0.26.0,则此问题会影响你运行az dt命令的能力。 您可以使用命令az version检查 CLI 版本,使用az extension show命令检查扩展azure-iot版本。 需要在 az dt Azure CLI 版本 2.70.0 或更高版本中运行命令的 CLI 扩展版本 0.26.0 或更高版本azure-iot 使用命令 az extension updateazure-iot 扩展更新到最新版本。

后续步骤

阅读有关 Azure 数字孪生的安全性和权限的详细信息: