Поделиться через


Устранение неполадок подключения службы удостоверений рабочей нагрузки Azure Resource Manager

Получите справку по отладке распространенных проблем с подключениями службы удостоверений рабочей нагрузки. Вы также узнаете, как вручную создать подключение к службе, если это необходимо.

Контрольный список по устранению неполадок

Используйте следующий контрольный список для устранения неполадок с подключениями службы удостоверений рабочей нагрузки:

  • Просмотрите задачи конвейера, чтобы убедиться, что они поддерживают удостоверение рабочей нагрузки.
  • Убедитесь, что федерация удостоверений рабочей нагрузки активна для клиента.
  • Проверьте URL-адрес издателя и тему федерации для точности.

В следующих разделах описаны проблемы и способы их устранения.

Просмотр задач конвейера

Не все задачи конвейеров поддерживают удостоверение рабочей нагрузки. В частности, только свойства подключения службы Azure Resource Manager для задач используют федерацию удостоверений рабочей нагрузки. В таблице ниже перечислены поддержку федерации удостоверений рабочей нагрузки для задач, включенных в Azure DevOps. Для задач, установленных из Магазина, обратитесь за поддержкой к издателю расширения.

Задача Поддержка федерации удостоверений рабочей нагрузки
AutomatedAnalysis@0 Y
AzureAppServiceManage@0 Y
AzureAppServiceSettings@1 Y
AzureCLI@1 Y
AzureCLI@2 Y
AzureCloudPowerShellDeployment@1 Использование AzureCloudPowerShellDeployment@2
AzureCloudPowerShellDeployment@2 Y
AzureContainerApps@0 Y
AzureContainerApps@1 Y
AzureFileCopy@1 Использование AzureFileCopy@6
AzureFileCopy@2 Использование AzureFileCopy@6
AzureFileCopy@3 Использование AzureFileCopy@6
AzureFileCopy@4 Использование AzureFileCopy@6
AzureFileCopy@5 Использование AzureFileCopy@6
AzureFileCopy@6 Y
AzureFunctionApp@1 Y
AzureFunctionApp@2 Y
AzureFunctionAppContainer@1 Y
AzureFunctionOnKubernetes@0 Использование AzureFunctionOnKubernetes@1
AzureFunctionOnKubernetes@1 Y
AzureIoTEdge@2 Y
AzureKeyVault@1 Y
AzureKeyVault@2 Y
AzureMonitor@0 Использование AzureMonitor@1
AzureMonitor@1 Y
AzureMysqlDeployment@1 Y
AzureNLBManagement@1 N
AzurePolicyCheckGate@0 Y
AzurePowerShell@2 Y
AzurePowerShell@3 Y
AzurePowerShell@4 Y
AzurePowerShell@5 Y
AzureResourceGroupDeployment@2 Y
AzureResourceManagerTemplateDeployment@3 Y
AzureRmWebAppDeployment@3 Y
AzureRmWebAppDeployment@4 Y
AzureSpringCloud@0 Y
AzureVmssDeployment@0 Y
AzureWebApp@1 Y
AzureWebAppContainer@1 Y
ContainerBuild@0 Y
ContainerStructureTest@0 Y
Docker@0 Y
Docker@1 Подключение к службе Azure: Y
Подключение службы реестра Docker: N
Docker@2 Y
DockerCompose@0 Y
DockerCompose@1 Y
DotNetCoreCLI@2 Y
HelmDeploy@0 Подключение к службе Azure: Y
HelmDeploy@1 Подключение к службе Azure: Y
InvokeRESTAPI@1 Y
JavaToolInstaller@0 Y
JenkinsDownloadArtifacts@1 Y
Kubernetes@0 Использование Kubernetes@1
Kubernetes@1 Y
KubernetesManifest@0 Использование KubernetesManifest@1
KubernetesManifest@1 Y
Maven@4 Y
Notation@0 Y
PackerBuild@0 Использование PackerBuild@1
PackerBuild@1 Y
PublishToAzureServiceBus@1 Использование PublishToAzureServiceBus@2 с подключением службы Azure
PublishToAzureServiceBus@2 Y
ServiceFabricComposeDeploy@0 N
ServiceFabricDeploy@1 N
SqlAzureDacpacDeployment@1 Y
VSTest@3 Y

Убедитесь, что федерация удостоверений рабочей нагрузки активна

Если вы видите сообщения об ошибках AADSTS700223 или AADSTS700238, федерация удостоверений рабочей нагрузки была отключена в клиенте Microsoft Entra.

Убедитесь, что нет политик Microsoft Entra, которые блокируют федеративные учетные данные.

Проверьте URL-адрес издателя для точности

Если отображается сообщение, указывающее , что не найдена соответствующая запись федеративного удостоверения, URL-адрес издателя или тема федерации не совпадает. Корректный URL-адрес издателя начинается с https://vstoken.dev.azure.com.

URL-адрес издателя можно исправить, изменив и сохранив подключение к службе для обновления URL-адреса издателя. Если в Azure DevOps не создано удостоверение, URL-адрес издателя следует обновить вручную. Для удостоверений Azure URL-адрес издателя обновляется автоматически.

Распространенные проблемы

В следующих разделах описываются распространенные проблемы и описываются причины и решения.

У меня нет разрешений на создание субъекта-службы в клиенте Microsoft Entra

Вы не можете использовать средство настройки подключения к службе Azure DevOps, если у вас нет необходимых разрешений. Уровень ваших разрешений недостаточен для использования средства, если у вас нет разрешений на создание субъектов-служб или если вы используете другой клиент Microsoft Entra, отличный от пользователя Azure DevOps.

Необходимо иметь разрешения в Microsoft Entra ID для создания регистраций приложений или иметь соответствующую роль (например, разработчика приложений).

Есть два способа для решения этой проблемы.

Сообщения об ошибках

В следующей таблице перечислены распространенные сообщения об ошибках и проблемы, которые могут их создать:

Сообщение Возможная проблема
не удается запросить маркер: Get ?audience=api://AzureADTokenExchange: unsupported protocol scheme Задача не поддерживает федерацию удостоверений рабочей нагрузки.
Удостоверение не найдено Задача не поддерживает федерацию удостоверений рабочей нагрузки.
Не удалось получить маркер доступа для Azure Задача не поддерживает федерацию удостоверений рабочей нагрузки.
AADSTS700016: приложение с идентификатором "****" не найдено Удостоверение, используемое для подключения к службе, больше не существует, может быть удалено из подключения службы или неправильно настроено. Если вы настраиваете подключение службы вручную с предварительно созданным удостоверением, убедитесь, что appID/clientId настроено правильно.
AADSTS7000215: указан недопустимый секрет клиента. Вы используете подключение к службе с истекшим сроком действия секрета. Преобразуйте подключение службы в федерацию удостоверений рабочей нагрузки и замените истекший срок действия федеративными учетными данными.
AADSTS700024. Утверждение клиента не находится в допустимом диапазоне времени Если ошибка возникает примерно через 1 час, используйте подключение к службе с федерацией удостоверений рабочей нагрузки и управляемым удостоверением . Маркеры управляемого удостоверения имеют время существования около 24 часов.
Если ошибка возникает до 1 часа, но через 10 минут переместите команды, которые (неявно) запрашивают маркер доступа, например доступ к хранилищу Azure к началу скрипта. Маркер доступа будет кэширован для последующих команд.
AADSTS70021: для представления утверждения не найдена соответствующая федеративная запись удостоверения. Издатель утверждения: https://app.vstoken.visualstudio.com. Федеративные учетные данные не были созданы или URL-адрес издателя не является правильным. Правильный URL-адрес издателя имеет формат https://vstoken.dev.azure.com/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX. Url-адрес издателя можно исправить, изменив и сохранив подключение к службе. Если Azure DevOps не создали удостоверение, необходимо вручную обновить издателя. Правильный издатель можно найти в диалоговом окне редактирования подключения службы или в ответе (в параметрах авторизации), если вы используете REST API.
AADSTS70021: для представления утверждения не найдена соответствующая федеративная запись удостоверения. Издатель утверждения: https://vstoken.dev.azure.com/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX. Тема утверждения: sc://<org>/<project>/<service-connection>. URL-адрес издателя или тема федерации не совпадают. Организация Или проект Azure DevOps переименованы или созданная вручную служба была переименована без обновления темы федерации для удостоверения.
AADSTS700211: не найдена соответствующая федеративная запись удостоверения для представленного издателя утверждений Федеративные учетные данные не были созданы или URL-адрес издателя не является правильным.
AADSTS700213: не найдена соответствующая федеративная запись удостоверения для представленной темы утверждения Федеративные учетные данные не были созданы или тема не является правильной.
AADSTS700223 Федерация удостоверений рабочей нагрузки ограничена или отключена в клиенте Microsoft Entra. В этом сценарии можно использовать управляемое удостоверение для федерации. Дополнительные сведения см. в разделе Удостоверение рабочей нагрузки с управляемым удостоверением.
AADSTS70025. Клиентское приложение не имеет настроенных федеративных учетных данных удостоверения Убедитесь, что федеративные учетные данные настроены для регистрации приложения или управляемого удостоверения.
Microsoft Entra отклонил токен, выданный Azure DevOps с кодом ошибки AADSTS700238 Федерация удостоверений рабочей нагрузки ограничена клиентом Microsoft Entra. Издатель вашей организации (https://vstoken.dev.azure.com/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX) не может использовать федерацию удостоверений рабочей нагрузки. Попросите администратора клиента Microsoft Entra или команды администрирования разрешить федерацию удостоверений рабочей нагрузки для вашей организации Azure DevOps.
AADSTS900382: конфиденциальный клиент не поддерживается в Кросс-облаке Некоторые независимые облака блокируют федерацию удостоверений рабочей нагрузки.
Не удалось получить веб-токен JSON (JWT) с помощью идентификатора клиента субъекта-службы Учетные данные удостоверения федерации неправильно настроены или клиент Microsoft Entra блокирует OpenID Connect (OIDC).
Сбой скрипта с ошибкой: unrecognizedArgumentError: нераспознанные аргументы: --federated-token Вы используете задачу AzureCLI в агенте с установленной более ранней версией Azure CLI. Для федерации удостоверений рабочей нагрузки требуется Azure CLI 2.30 или более поздней версии.
Не удалось создать приложение в идентификаторе Microsoft Entra. Ошибка: недостаточно привилегий для выполнения операции в Microsoft Graph. Убедитесь, что у пользователя есть разрешения на создание приложения Microsoft Entra. Возможность создания регистраций приложений отключена в клиенте Microsoft Entra. Назначьте пользователю, создающему подключение к службе, роль Microsoft Entra разработчика приложений. Кроме того, создайте подключение службы вручную с помощью управляемого удостоверения. Дополнительные сведения см. в разделе Удостоверение рабочей нагрузки с управляемым удостоверением.

Отображается ли ошибка AADSTS, указанная выше? Проверьте коды ошибок проверки подлинности и авторизации Microsoft Entra.