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

Сервисы Azure DevOps | Azure DevOps Server | Azure DevOps Server 2022

Если скомпрометирован личный маркер доступа (PAT), действовать быстро. Администраторы могут отозвать ПАТ пользователя для защиты организации. Отключение учетной записи пользователя также отменяет его PAT.

Совет

Чтобы создать или отозвать собственный PAT, перейдите на страницу токенов личного доступа.

Важный

Рассмотрите возможность использования более безопасных токенов Microsoft Entra вместо более рискованных персональных токенов доступа. Дополнительные сведения см. в разделе "Сокращение использования PAT". Просмотрите рекомендации по проверке подлинности , чтобы выбрать правильный механизм проверки подлинности для ваших потребностей.

Зачем отменять пользовательские PATS?

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

  • Скомпрометированный маркер — запрет несанкционированного доступа, если маркер скомпрометирован.
  • Пользователь покидает организацию . Убедитесь, что у бывших сотрудников больше нет доступа.
  • Изменения разрешений — недопустимые маркеры, отражающие старые разрешения.
  • Нарушение безопасности . Устранение несанкционированного доступа во время нарушения.
  • Регулярные методы безопасности. Регулярно отменяйте и перевыпускайте токены в рамках политики безопасности.

Совет

Вы можете использовать ИИ, чтобы помочь с этой задачей позже в этой статье или ознакомиться с включение помощи ИИ в Azure DevOps MCP Server, чтобы начать работу.

Предварительные условия

Категория Требования
Права доступа Член группы администраторов коллекции проектов . Владельцы организации автоматически входят в эту группу.

Отмена PATS

  1. Чтобы отозвать авторизации OAuth, включая PATs, для пользователей вашей организации, см. статью Отзыв токенов — Отмена авторизаций.
  2. Чтобы автоматизировать вызов REST API, используйте этот PowerShell-скрипт, который передает список основных имен пользователей (UPN). Если вы не знаете UPN пользователя, создавшего PAT, используйте этот скрипт с указанным диапазоном дат.

Примечание.

При использовании диапазона дат все веб-токены JSON (JWT) также отзываются. Средства, зависящие от этих токенов, не работают, пока токены не будут обновлены.

  1. После успешного отзыва затронутых PATS сообщите пользователям. При необходимости они могут воссоздать свои токены.

Может возникнуть задержка до одного часа до того, как PAT станет неактивным. Этот период задержки сохраняется до полной обработки операции отключения или удаления в Microsoft Entra ID.

Истечение срока действия токена FedAuth

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

Срок действия PAT

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

Журналы аудита

Если ваша организация подключена к Microsoft Entra ID, у вас есть доступ к журналам аудита, отслеживающим различные события, включая изменения разрешений, удаленные ресурсы и доступ к журналам. Эти журналы аудита полезны для проверки отзыва или изучения любых действий. Дополнительные сведения см. в статьях "Доступ", "Экспорт" и "Фильтрация журналов аудита".

Часто задаваемые вопросы

Вопрос. Что происходит с PAT, если пользователь покидает мою компанию?

Ответ. После удаления пользователя из Microsoft Entra ID маркеры PATs и FedAuth недействительны в течение часа, так как маркер обновления действителен только в течение одного часа.

Вопрос. Следует ли отозвать веб-маркеры JSON (JWTs)?

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

Использование ИИ для управления личными маркерами доступа

Если у вас настроен Azure DevOps MCP Server, вы можете использовать помощники по искусственному интеллекту для просмотра и управления личными маркерами доступа для пользователей вашей организации с помощью запросов естественного языка. Сервер MCP предоставляет помощнику по искусственному интеллекту безопасный доступ к данным Azure DevOps, что позволяет проверять маркеры, проверять доступ пользователей и просматривать параметры безопасности без перехода через веб-интерфейс.

Примеры запросов для управления PAT

задачи Пример запроса
Реагирование на инцидент безопасности Immediately list all active PATs for <user-email> in <organization-name> and show their scopes and last used dates
Очистка после отъезда сотрудника Find all PATs and active sessions for <user-email> in <organization-name> that should be revoked
Найти слишком широкие токены List all full-scoped PATs in <organization-name> that have been active in the last 90 days and who owns them
Маркеры аудита, срок действия которых скоро истекает Show PATs expiring within the next 7 days in <organization-name> and notify me which ones have Code Write or Build Execute scopes
Проверка устаревших токенов Find PATs in <organization-name> that were created more than a year ago and haven't been used in the last 60 days
Проверка токенов, действующих в пределах полномочий администратора List all PATs in <organization-name> that have Full access or manage scopes, grouped by user

Совет

Если вы используете Visual Studio Code, agent mode особенно полезно для аудита использования PAT и проверки политик безопасности в организации.

  • Чтобы избежать использования устаревших или кэшированных данных из предыдущих запросов, добавьте в запрос Do not use previously fetched data.