Контроль и управление вокруг ПАТ в VSTS - PullRequest
0 голосов
/ 31 мая 2018

Мы оцениваем VSTS для использования на предприятии.Одной из проблем со стороны группы безопасности является отсутствие контроля и управления в отношении использования PAT (персональных маркеров доступа). Как я понимаю, любой пользователь может создать один или несколько PAT, и этот PAT может использоваться из внешней сети для выполнения вызовов REST API (илиподключиться с помощью инструментов вне сети) к VSTS для доступа к информации.

У вас есть вопросы по этому сценарию, и любые идеи и обходные пути из вашего опыта приветствуются

  • Как ваша организация справляетсяэтот вопрос или работал вокруг этой проблемы?Ищете варианты, чтобы получить бай-ин от службы безопасности.Кто-нибудь когда-либо обращался к Microsoft с этим заявлением о проблеме?Я уверен, что есть много корпоративных клиентов, задающихся вопросом, как они решили эту проблему.
  • Есть ли способ отключить создание PAT для всех пользователей?Не вижу никаких вариантов, но есть обходной путь для обеспечения этого.
  • Есть ли способ получить список всех PAT для всех пользователей?Не вижу никакой опции в VSTS, но может быть через какой-то скрипт

Спасибо

1 Ответ

0 голосов
/ 31 мая 2018

Обновление

Теперь есть API для просмотра списка созданных PAT и возможность для администратора отзывать PAT от имени своих пользователей:

GET https://vssps.dev.azure.com/{organization}/_apis/tokenadmin/personalaccesstokens/{subjectDescriptor}?api-version=5.0-preview.1

Ответ:

{
  "value": [
    {
      "clientId": "00000000-0000-0000-0000-000000000000",
      "accessId": "00000000-0000-0000-0000-000000000000",
      "authorizationId": "952858d3-7084-4635-964e-3c2a57645185",
      "hostAuthorizationId": "00000000-0000-0000-0000-000000000000",
      "userId": "bb5bb6c8-ef0a-400f-8987-92b3674d2043",
      "validFrom": "2018-07-19T00:00:00",
      "validTo": "2018-07-19T00:00:00",
      "displayName": null,
      "scope": "app_token",
      "targetAccounts": null,
      "token": null,
      "alternateToken": null,
      "isValid": true,
      "isPublic": false,
      "publicData": null,
      "source": null
    },
    ....

Подробнее здесь:

А чтобы отозвать токены других пользователей, используйте:

POST https://vssps.dev.azure.com/{organization}/_apis/tokenadmin/revocations?api-version=5.0-preview.1
[
  {
    "authorizationId": "532c7fe6-74f8-408b-8051-4abb73dca491"
  }
]

См .:


Существует возможность отключить базовые учетные данные / альтернативную проверку подлинности и учетные данные SSH, которые менее безопасны, чем персональный доступжетоны.Нет возможности отключить токены личного доступа.Я полагаю, что основной причиной этого является то, что инфраструктура Git и агента VSTS полагаются на работу этих маркеров доступа.

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

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

Вы можете отключить OAuth и Basic Credentials.Это не блокирует токены личного доступа:

enter image description here

Влияние на условный доступ Azureздесь объяснено:

Важно

VSTS применяет политики условного доступа только тогда, когда пользователь входит в службы со своими учетными данными AAD,Доступ к VSTS с использованием личных маркеров доступа (PAT), альтернативной аутентификации, ключей OAuth и SSH обходит политики условного доступа.

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

VSTS ведет журнал операций, в котором указывается, какие пользователи выполнили какие действия.Этот журнал будет включать в себя IP-адрес пользователя.Таким образом, вы можете по крайней мере контролировать действия.

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...