/sys/policies/
Конечные точки /sys/policies используются для управления политиками ACL, RGP и EGP в StarVault.
1. Список политик ACL
Эта конечная точка выводит список всех настроенных политик ACL. Эта конечная точка может принимать префикс для отображения списка политик.
Метод |
Путь |
|
|
|
|
curl \
-X LIST --header "X-Vault-Token: ..." \
http://127.0.0.1:8200/v1/sys/policies/acl
{
"keys": ["root", "my-policy"]
}
2. Чтение политики ACL
Данная конечная точка извлекает информацию о именованной политике ACL.
Метод |
Путь |
|
|
2.1. Параметры
-
name(string: <required>)– указывает имя политики, которую необходимо получить. Оно указывается как часть URL-адреса запроса.
curl \
--header "X-Vault-Token: ..." \
http://127.0.0.1:8200/v1/sys/policies/acl/my-policy
{
"name": "deploy",
"policy": "path \"secret/foo\" {...",
"modified": "2025-03-25T16:50:49.348095648-05:00",
"version": 3,
"cas_required": true
}
3. Создание/обновление политики ACL
Данная конечная точка добавляет новую или обновляет существующую политику ACL. После обновления политика немедленно вступает в силу для всех связанных пользователей.
Метод |
Путь |
|
|
3.1. Параметры
-
name(string: <required>)– указывает имя создаваемой политики. Оно указывается как часть URL-адреса запроса. -
policy(string: <required>)- указывает документ политики. Может быть закодирован в формате Base64, чтобы избежать экранирования строк. -
expiration(time: <optional>)— указывает время истечения срока действия, по истечении которого политика перестанет действовать и будет удалена при следующей загрузке. Не может быть установлена совместно сttlи не может находиться в прошлом. -
ttl(duration: <optional>)— указывает время, в течение которого политика будет действительна и будет удалена при следующей загрузке. Не может быть установлено совместно сexpiration. -
cas(int: <optional>)– необязательная версия политики для сравнения перед внесением любых изменений (check-and-set). Если существующая версия политики имеет версиюcas_required=true, или параметрcas_required=trueуказан в запросе, этотcasпараметр обязателен. Если политика отсутствует и это должна быть операция создания, установите значение-1; существующие политики, созданные до этого поля, начинаются с версии0. -
cas_required(bool: <optional>)– требуется ли использовать check-and-set семантику для этого и следующего запроса. Обратите внимание: поскольку это операция создания/обновления, для продолжения использования этот параметр необходимо сбрасывать в значениеtrueпри каждой последующей операции. При значенииtrueпараметрcasстановится обязательным. Значение по умолчанию –false.
{
"policy": "path \"secret/foo\" {..."
}
curl \
--header "X-Vault-Token: ..." \
--request POST \
--data @payload.json \
http://127.0.0.1:8200/v1/sys/policies/acl/my-policy