Как назначить разрешения на уровне организации для создания репозиториев во всех проектах организации в Azure DevOps?

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

Знаете ли вы и можете ли вы привести пример того, как давать разрешения на создание репозиториев на уровне всей организации?

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
0
52
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

вы можете попробовать использовать Azure DevOps CLI «az DevOps Security Permission», чтобы назначить разрешение:

  1. Перейдите на страницу «Настройки организации» > «Разрешения», чтобы создать новую группу (например, Create Repos). После создания откройте его, вы увидите дескриптор группы (subjectDescriptor) этой группы в адресной строке браузера. Скопируйте и запомните значение дескриптора (vssgp.xxxx), оно будет использоваться в последующем CLI Azure DevOps.

  2. Запустите команду «az devops список пространств имен разрешений безопасности», чтобы получить namespaceId и bit элемента разрешения «Создать репозиторий». Как правило, значения этих двух свойств фиксированы. Все элементы разрешений, связанные с репозиторием, обычно имеют одно и то же пространство имен, и каждый элемент имеет свой собственный бит.

    • Идентификатор пространства имен: 2e9eb7ed-3c0a-47d4-87c1-0ffdd275fd87
    • немного: 256

  3. Затем вы можете запустить «az devops обновление разрешений безопасности», чтобы глобально установить для элемента разрешения «Создать репозиторий» значение «Разрешить» для группы «Create Repos» внутри организации.

Ниже приведен пример сценария Bash для вызова Azure DevOps CLI.

#!/bin/bash

organization = "xxxx"
pat = "xxxx"
groupDescriptor = "vssgp.xxxx"
namespaceId = "2e9eb7ed-3c0a-47d4-87c1-0ffdd275fd87"

# Login the Azure DevOps organization.
echo $pat | az devops login --org https://dev.azure.com/$organization

# If you do not know the the 'namespaceId' and 'bit' of the permission item, you can run below command, and then check the values in the output json file.
# az devops security permission namespace list > namespaces.json

# Globally set the permission "Create repository" to "Allow" for the group "Create Repos" within the organization.
az devops security permission update --id $namespaceId --subject $groupDescriptor --token "repoV2" --allow-bit 256

Таким образом:

  • Разрешение «Создать репозиторий» будет установлено на «Разрешить» для группы «Create Repos» во всех проектах внутри организации.
  • Когда в организации создается новый проект, это разрешение будет автоматически применено к новому проекту по умолчанию.
  • Пользователи, добавленные в качестве участников в группу «Create Repos», также автоматически унаследуют это разрешение по умолчанию.

Другие вопросы по теме

Похожие вопросы

Развертывание веб-приложения Python (Dash) в Azure, конвейер работает слишком долго, а колесо создания сообщений для панд все еще работает. Как оптимизировать?
Нет кнопки «Импортировать конвейер» в Azure DevOps
Не удалось войти в систему для пользователя «<участник, идентифицированный токеном>» при авторизации на SQL Server через субъект-службу из назначенной группы AAD
Доступ к артефактам конвейера Azure DevOps из другой организации
Конвейеры ADO YAML | Как получить секретную переменную из группы переменных на основе значения другой переменной
Аутентификация с использованием Azure CLI поддерживается только для пользователя (а не для субъекта-службы)
Почему Azure Pipelines устанавливает неправильную версию .NET SDK (согласно global.json)
Необходимо ли после миграции переходить с размещенного XML на модель процесса наследования?
Как получить доступ к артефакту из расширения Azure?
Azure DevOps — ошибка JFrogNuget — произошла ошибка при выполнении задачи: ошибка: команда не выполнена