Управление разрешениями

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022

Артефакты Azure позволяют разработчикам эффективно управлять зависимостями, храня различные типы пакетов в одном канале. С помощью гибких параметров разрешений вы можете точно настроить доступ к вашим пакетам, контролировать, кто может создавать или администрировать каналы, и управлять доступом к пакетам из Azure Pipelines.

Параметры артефактов Azure

С помощью параметров Azure Artifacts вы можете управлять тем, кто может создавать и администрировать каналы.

Примечание.

Чтобы настроить параметры Azure Artifacts, вы должны быть владельцем канала или администратором коллекции проектов.

  1. Войдите в организацию Azure DevOps и перейдите к проекту.

  2. Выберите Артефакты, а затем выберите ваш веб-канал в раскрывающемся меню.

  3. Выберите значок параметров артефактов Azure справа.

  4. Выберите "Кто может создавать каналы " и "Кто может администрировать веб-каналы", а затем нажмите кнопку "Сохранить " после завершения.

    Снимок экрана: настройка параметров артефактов Azure.

Настройки ленты

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

  1. Войдите в организацию Azure DevOps, а затем перейдите к проекту.

  2. Выберите Артефакты, а затем выберите ваш веб-канал в раскрывающемся меню.

  3. Щелкните значок шестеренки справа, чтобы перейти к настройкам ленты.

  4. Выберите "Разрешения", а затем выберите "Добавить пользователей или группы".

    Снимок экрана, на котором показано, как получить доступ к разрешениям канала.

  5. Добавьте новых пользователей или группы и назначьте соответствующую роль:

    1. Владелец фида: может удалять пакеты, разрешать версии внешних пакетов, изменять параметры фида и управлять источниками вышестоящих фидов, а также разрешениями участника.
    2. Издатель веб-каналов (участник): может публиковать, продвигать или нерекомендуть пакеты вместе с разрешениями участника совместной работы.
    3. Читатель ленты и вышестоящего потока (сотрудник) — может сохранять пакеты из вышестоящего источника помимо разрешений на чтение.
    4. Читалка RSS-лент: может просматривать и загружать пакеты из ленты.
  6. Выберите Сохранить, когда вы закончите.

Примечание.

По умолчанию служба сборки коллекции проектов (организационная область) и служба сборки уровня проекта (область проекта) назначены на роль Чтение ленты и восходящего потока (участник сотрудничества).

Примечание.

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

Роли и разрешения фида

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

Разрешение Читалка лент Лента и средство для чтения входящего потока (сотрудник) Издатель ленты (автор) Владелец канала
Показать список пакетов в ленте
Скачивание и установка и восстановление пакетов
Сохранить пакеты из внешних источников
Публикация пакетов
Продвижение пакетов в представление
Отключить/скрыть/удалить пакеты
Удаление и отмена публикации пакетов
Добавление и удаление входящих источников
Разрешить использование версий внешних пакетов
Изменение параметров веб-канала
Удалить веб-канал

Примечание.

Администраторы коллекции проектов и Администраторы артефактов Azure автоматически получают роль владельца фида для всех фидов в проекте.

Параметры отображения ленты

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

По умолчанию каждый канал включает три представления: @Local, @Prerelease и @Release. Последние два являются предлагаемыми представлениями, которые можно переименовать или удалить по мере необходимости. Это @Local представление используется по умолчанию. Оно включает в себя все пакеты, опубликованные непосредственно в канал распространения, а также пакеты, сохраненные из вышестоящих источников.

Это важно

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

  1. Войдите в организацию Azure DevOps, а затем перейдите к проекту.

  2. Выберите Артефакты, а затем выберите ваш веб-канал в раскрывающемся меню.

  3. Щелкните значок шестеренки, чтобы перейти к настройкам ленты.

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

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

    Это важно

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

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

    Снимок экрана: параметры разрешений для представления @Prerelease в Артефактах Azure.

Примечание.

Чтобы добавить веб-канал из другой организации в качестве вышестоящего источника, владелец целевого веб-канала должен предоставить общий доступ к целевому представлению со всеми веб-каналами и людьми в организациях, связанных с моим клиентом Microsoft Entra. Это можно сделать, перейдя к настройкам канала>представлениям, выбрав многоточие рядом с указанным представлением, выбрав Изменить, и изменив разрешения.

Разрешения трубопроводов

Чтобы получить доступ к каналу данных из вашего конвейера, соответствующее удостоверение сборки должно иметь необходимые разрешения. Удостоверение сборки на уровне проекта называется [Project name] Build Service ([Organization name]), например FabrikamFiber Build Service (codesharing-demo) , когда удостоверение сборки уровня организации называется Project Collection Build Service ([Organization name]), например Project Collection Build Service (codesharing-demo). Вот как добавить идентификатор сборки в права доступа вашего канала:

  1. Войдите в организацию Azure DevOps, а затем перейдите к проекту.

  2. Выберите Артефакты, а затем выберите ваш веб-канал в раскрывающемся меню.

  3. Щелкните значок шестеренки, чтобы перейти к настройкам ленты.

  4. Выберите "Разрешения", а затем выберите "Добавить пользователей или группы". Добавьте удостоверение сборки и назначьте ему роль Читатель каналов и upstream (Сотрудник). Если вашему конвейеру необходимо опубликовать пакеты в канал, убедитесь, что как Служба сборки коллекции проектов, так и удостоверение для службы сборки вашего проекта имеют роль издателя канала.

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

Примеры

Ознакомьтесь с примерами ниже, чтобы узнать, как осуществлять проверку подлинности и публиковать пакеты в фид, используя Azure Pipelines.

Тип пакета Article
NuGet Публикуйте пакеты NuGet с помощью Azure Pipelines
Npm Публикация пакетов npm с помощью Azure Pipelines
Мейвен Публикация артефактов Maven с помощью Azure Pipelines
Питон Публикация пакетов Python с помощью Azure Pipelines
Груз Публикация пакетов Cargo с помощью Azure Pipelines
Универсальные пакеты Публикация универсальных пакетов с помощью Azure Pipelines
Тип пакета Article
NuGet Публикуйте пакеты NuGet с помощью Azure Pipelines
Npm Публикация пакетов npm с помощью Azure Pipelines
Мейвен Публикация артефактов Maven с помощью Azure Pipelines
Питон Публикация пакетов Python с помощью Azure Pipelines
Груз Публикация пакетов Cargo с помощью Azure Pipelines

Примечание.

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