Это несколько непонятно объясняется в документах :
/**
* An execution definition.
* The first value is a unique name for the execution.
*
* ...
*
* Plugin info annotation parameters:
* ...
* users (java.util.Set<java.lang.String>) - Users permitted to query this plugin for information or invoke it.
* groups (java.util.Set<java.lang.String>) - Groups permitted to query this plugin for information or invoke it.
*
* ...
*/
myExecution(version:version, description:description, httpMethod: 'GET', users:[], groups:[], params:[:]) { params ->
}
Существует несколько необязательных параметров, которые вы можете передать при создании плагина исполнения, два из которых users
и groups
.Если они опущены или пусты, плагины могут выполнять только пользователи-администраторы.Если вы хотите, чтобы пользователи без прав администратора запускали плагин, вам нужно добавить имена пользователей в список users
или имена групп в список groups
.Например:
executions {
repoInfo(httpMethod: 'GET', users: ['tom', 'bill'], groups: ['dev-team']) { params ->
// ...
}
}
В этом случае люди, которые могут использовать этот плагин: tom
, bill
, кто-либо из группы dev-team
и кто-либо с правами администратора.
Иногда имеет смысл сделать плагин доступным для всех и каждого.Для этого вы обычно делаете что-то вроде:
executions {
publicRepoInfo(httpMethod: 'GET', groups: ['readers']) { params ->
// ...
}
}
Artifactory устанавливает с уже существующей группой под названием readers
, которая автоматически добавляется всем новым пользователям и предоставляет им базовый доступ для чтения, поэтому всевошедшие в систему пользователи должны быть частью этой группы.Все пользователи, которые не вошли в систему, считаются зарегистрированными как специальный пользователь anonymous
, который также является частью группы readers
.