установить токен безопасности для SecurityNamespace.SetPermissions Method TFS

Я хочу программно установить разрешение Edit Build Definition для группы TFS с GUID xxx в командном проекте с GUID yyy, используя метод SecurityNamespace.SetPermissions.

Увидев сигнатуру метода, я вижу параметр токена безопасности и не знаю значение, которое я должен передать методу.

Вот мой вызов метода:

sn.SetPermissions(securityToken, groupIdentityDescriptor, action.Bit, 0, true);

Не могли бы вы мне помочь?


person polinello    schedule 18.05.2018    source источник


Ответы (1)


Подпись для Метод SetPermissions:

public abstract AccessControlEntry SetPermissions(
    string token,
    IdentityDescriptor descriptor,
    int allow,
    int deny,
    bool merge
)

В качестве примера возьмем следующий фрагмент:

securityNamespace.SetPermissions("/", identity.Descriptor ,RegistryServicePermissions.AllPermissions, 0, true);
  • token parmeter мы будем передавать / что означает, что мы будем предоставлять доступ ко всему реестру. Если вы хотите предоставить доступ только к части дерева, это место для этого
  • identityDescriptor мы будем передавать учетную запись/группу, для которых мы будем предоставлять параметр (подробнее об этом позже)
  • разрешить параметр, мы передаем значение значения RegistryServicePermissions.AllPermissions, так как мы хотим предоставить доступ для чтения/записи
  • в параметре deny мы передадим 0, так как мы не хотим ничего запрещать
  • merge мы будем передавать true, так как мы хотим, чтобы эти разрешения были объединены с существующими (на всякий случай)

Для получения дополнительной информации вы можете проверить блог ниже:

https://pascoal.net/2011/11/13/using-team-foundation-server-registrypart-ii-the-api/

Кроме того, вот полезный пример для справки: API TFS - Как получить администратора команды?.

person Cece Dong - MSFT    schedule 21.05.2018