Разрешение TFS Contribute для ветки Git - PullRequest
0 голосов
/ 21 декабря 2018

У нас есть локальный Team Foundation Server (версия 14.114.26403.0).Я пытаюсь заблокировать наши ветки dev + master, чтобы побудить разработчиков создавать функциональные ветки и отправлять запросы в dev.В рамках этого я установил для разрешения Contribute значение «Запретить» для всех групп доступа в ветви dev, кроме групп «Администраторы проекта» и «Сборка».

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

Они получают следующую ошибку:

TF401027: Ваша учетная запись не имеет разрешения) требуется для операции, которую вы пытаетесь.Вам необходимо иметь GenericContribute.Пожалуйста, свяжитесь с вашим администратором.

Я также получаю эту ошибку, пока не восстановлю разрешения на добавление для других групп.

Кто-нибудь знает, почему это происходит?Или как решить?Все, о чем я могу думать, - это то, что пользователи в группах администраторов также являются участниками, так что, возможно, «Запретить» из их членства в группе Участников переопределяет их «Разрешить» от администратора?

1 Ответ

0 голосов
/ 21 декабря 2018

Явные разрешения «Запретить» имеют более высокий приоритет, чем явные разрешения «Разрешить».В общем, не используйте явный Deny.Если разрешение не разрешено (т. Е. «Не установлено»), оно неявно отклоняется.

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

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