Поддержка расширенной безопасности GitHub и управляемого удостоверения и субъекта-службы для Azure DevOps теперь общедоступна

Мы рады сообщить, что GitHub Advanced Security и Управляемое удостоверение и поддержка субъекта-службы для Azure DevOps теперь общедоступна!

В GitHub Advanced Security мы также улучшили сканирование кода, чтобы включить все предоставленные пользователем входные данные в задачу инициализации CodeQL. Кроме того, мы расширили поддержку CodeQL для включения Swift.

В Boards мы выпускаем правила team Automation в закрытой предварительной версии. Теперь можно настроить каждый уровень невыполненной работы, чтобы автоматизировать открытие и закрытие или разрешение рабочих элементов на основе состояний своих дочерних элементов. Ознакомьтесь с заметками о выпуске, если вы заинтересованы в регистрации в закрытой предварительной версии.

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

Общие

Расширенная безопасность GitHub для Azure DevOps

Azure Boards

Azure Pipelines

Общие

Поддержка управляемого удостоверения и субъекта-службы для Azure DevOps теперь в общедоступной версии

Поддержка управляемых удостоверений и субъектов-служб Microsoft Entra ID в Azure DevOps теперь достигла общедоступной версии.

Сегодня многие сценарии интеграции приложений используют личные маркеры доступа (PATS) для интеграции с Azure DevOps. В то время как просто использовать, PATs можно легко утечки, потенциально позволяя вредоносным субъектам проходить проверку подлинности в качестве мощных пользователей. Чтобы предотвратить нежелательный доступ, paTs часто требуют много времени обслуживания с помощью регулярных смен учетных данных.

Теперь можно разрешить приложениям использовать управляемые удостоверения и субъекты-службы для интеграции с Azure DevOps через REST API и клиентские библиотеки. Эта высоко запрошенная функция предлагает клиентам Azure DevOps более безопасную альтернативу PATS. Управляемые удостоверения позволяют приложениям, работающим в ресурсах Azure, получать маркеры Azure AD без необходимости управлять учетными данными вообще.

Управляемые удостоверения и субъекты-службы могут быть настроены в Azure DevOps и предоставлены разрешения на определенные ресурсы (проекты, репозитории, конвейеры), как и обычные пользователи. Это позволяет приложениям, используюющим управляемые удостоверения или субъекты-службы, подключаться к Azure DevOps и выполнять действия от имени себя, а не от имени пользователя, как это делает PAT. Теперь Teams может лучше управлять своими службами совместно, а не полагаться на любого отдельного человека, чтобы предоставить маркер для проверки подлинности. Узнайте больше о выпуске общедоступной публикации блога и нашей документации по функциям.

Новые область Azure DevOps, доступные для приложений потока делегированных удостоверений Майкрософт

Мы добавили новые область Azure DevOps для делегированных приложений OAuth на платформе удостоверений Майкрософт, а также совместно известных как приложения OAuth microsoft Entra ID. Эти новые область позволят разработчикам приложений сообщить, какие разрешения они надеются запрашивать от пользователя, чтобы выполнять обязанности приложения. Эта высоко запрошенная функция позволяет разработчикам приложений запрашивать от своих пользователей только необходимые им разрешения.

Ранее user_impersonation была единственной область, доступной разработчикам приложений для выбора. Это область предоставляет приложению полный доступ ко всем API Azure DevOps, что означает, что он сможет сделать все, что пользователь может сделать во всех организациях, к которым принадлежит пользователь. Теперь с более детализированной область доступны, вы можете легко сделать так, чтобы приложения могли запрашивать и получать доступ только к этим API, которые запрашиваемые область предоставили им разрешение на доступ.

Узнайте больше об этих новых область в нашей публикации в общедоступном блоге и документации по функциям.

Расширенная безопасность GitHub для Azure DevOps

Изменения в задаче ввода и переменных пользователей сканирования кода (CodeQL)

Все предоставленные пользователем входные данные теперь указываются в задаче инициализации CodeQL, которая отвечает за настройку среды анализа CodeQL, используемой для анализа кода с помощью CodeQL "AdvancedSecurity-Codeql-Init@1". Дополнительные сведения о настройке расширенной безопасности GitHub для Azure DevOps см. в документации по настройке расширенной безопасности GitHub для Azure DevOps.

Кроме того, входные данные пользователей имеют приоритет над любыми значениями, заданными переменными. Например, если вы устанавливаете переменную языка, как advancedsecurity.codeql.language: Java и впоследствии, во время этапа инициализации CodeQL, вы указываете язык как входные данные с Language: cpp, входными данными cpp переопределит переменную Java для языка. Убедитесь, что входные данные настроены точно.

Задача публикации больше не требуется для настройки сканирования кода

Ранее при настройке сканирования кода необходимо было включить задачу публикации (AdvancedSecurity-Publish@1) в конвейер YAML или классический конвейер. При этом обновлении мы устранили потребность в задаче публикации, а результаты теперь сразу отправляются в расширенную службу безопасности в рамках задачи анализа (AdvancedSecurity-Codeql-Analyze@1).

Ниже приведена задача "Требовать" для сканирования кода.

Screenshot of required code scanning tasks.

Дополнительные сведения см. в документации по настройке сканирования кода.

Сканирование кода CodeQL теперь поддерживает Swift

Мы расширяем нашу поддержку сканирования кода CodeQL, чтобы включить Swift! Это означает, что разработчики, работающие над библиотеками и приложениями Swift для платформ Apple, теперь могут воспользоваться преимуществами нашего анализа безопасности кода верхнего уровня. Наши текущие возможности включают обнаружение таких проблем, как внедрение путей, рискованные получение веб-представлений, различные криптографические неправильное использование и другие формы небезопасной обработки или обработки нефильтрованных пользовательских данных.

Swift теперь входит в список поддерживаемых языков программирования, включая C/C++, Java/Kotlin, JavaScript/TypeScript, Python, Ruby, C#и Go. В целом эти языки позволяют нам выполнять почти 400 комплексных проверка в коде, при этом сохраняя низкую скорость ложных срабатываний и обеспечивая высокую точность.

Дополнительные сведения о настройке GitHub Advanced Security для Azure DevOps см. в документации по настройке GitHub Advanced Security для Azure DevOps для репозиториев.

Azure Boards

Правила автоматизации группы (частная предварительная версия)

Важно!

По состоянию на 11.9.2023 мы не принимаем новые организации в частную предварительную версию. У нас была отличная обратная связь с несколькими незначительными ошибками для устранения. Мы работаем над этими ошибками и выпустим эту функцию всем в следующих нескольких спринтах.

Теперь можно настроить каждый уровень невыполненной работы, чтобы автоматизировать открытие и закрытие или разрешение рабочих элементов на основе состояний своих дочерних элементов. Существует два основных сценария, которые мы пытаемся решить.

  1. При активации одного дочернего элемента активируйте родительский элемент.

  2. При закрытии всех дочерних элементов закройте родительский элемент (или устраните его).

Чтобы включить эти параметры, щелкните конфигурацию уровня невыполненной работы для вашей команды. Затем перейдите на вкладку "Правила автоматизации > " , чтобы увидеть два разных правила, которые можно применить к невыполненной работы. Каждый уровень невыполненной работы (требования, функции, эпические эпосы) можно настроить для работы вашей команды.

Screenshots of Team Settings.

Например, если для любой дочерней задачи задано значение "Активный", сделайте родительскую историю пользователя активной. Затем, когда все задачи завершены, задайте для записи пользователя значение "Закрытая".

Gif to demo Team automation rules.

Если вы заинтересованы в регистрации в частной предварительной версии, отправьте нам сообщение электронной почты с именем организации (dev.azure.com/{название организации}). Обратите внимание, что мы будем ограничивать количество организаций в предварительной версии. Наша надежда состоит в том, чтобы получить несколько организаций, чтобы предоставить отзывы, а затем освободить всех в пределах 2-3 спринтов.

Функции были приоритетными на основе этого запроса предложения Сообщество разработчиков.

Примечание.

Эта функция будет доступна только в предварительной версии New Boards Hubs.

Azure Pipelines

Журналы конвейеров теперь содержат использование ресурсов

Журналы конвейера Azure теперь могут записывать метрики использования ресурсов, такие как память, использование ЦП и доступное место на диске. Журналы также включают ресурсы, используемые агентом конвейера и дочерними процессами, включая задачи, выполняемые в задании.

Screenshot of logs including resources used by the pipeline.

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

Агент Azure Pipelines теперь поддерживает Alpine Linux

Агент конвейера версии 3.227 теперь поддерживает Alpine Linux версии 3.13 и выше. Alpine Linux — это популярный образ контейнера (базовый). Агент можно найти на странице выпусков . В версиях агента Alpine Linux есть префикс vsts-agent-linux-musl , например vsts-agent-linux-musl-x64-3.227.1.tar.gz.

Следующие шаги

Примечание.

Эти функции будут развернуты в течение следующих двух-трех недель.

Перейдите к Azure DevOps и посмотрите.

Отправка отзыва

Мы хотели бы услышать то, что вы думаете об этих функциях. Используйте меню справки, чтобы сообщить о проблеме или указать предложение.

Screenshot Make a suggestion.

Вы также можете получить советы и ваши вопросы, ответы сообщества на Stack Overflow.

Thanks,

Раджеш Рамамурти