auth

GET /auth/token/accessors

ID операции: token-list-accessors

Возвращает список аксессоров токенов, с помощью которых затем можно перебрать токены, получить их свойства или отозвать их. Поскольку это может привести к отказу в обслуживании, для этой конечной точки помимо права ’list’ требуется право ‘sudo’.

Требует sudo: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
liststring (true)queryдаДолжно быть установлено значение true.

Ответы

200: OK

POST /auth/token/create

ID операции: token-create

Создает новые токены.

Параметры тела запроса

ПараметрТипОбязательныйОписание
display_namestringнетИмя, связываемое с этим токеном
entity_aliasstringнетИмя псевдонима сущности, связываемого с этим токеном
explicit_max_ttlstringнетЯвный максимальный TTL этого токена
idstringнетЗначение токена
leasestringнет⚠️ Устарело. Используйте вместо этого ’ttl'.
metaobjectнетПроизвольные метаданные вида ключ=значение, связываемые с токеном
no_default_policybooleanнетНе включать политику по умолчанию для этого токена
no_parentbooleanнетСоздать токен без родителя
num_usesintegerнетМаксимальное количество использований этого токена
periodstringнетПериод продления
policiesarrayнетСписок политик для токена
renewableboolean (default: True)нетРазрешить продление токена после истечения начального TTL вплоть до максимального TTL системы или точки монтирования
ttlstringнетВремя жизни этого токена
typestringнетТип токена

Ответы

200: OK

POST /auth/token/create-orphan

ID операции: token-create-orphan

Создает новые токены-сироты (без родителя).

Параметры тела запроса

ПараметрТипОбязательныйОписание
display_namestringнетИмя, связываемое с этим токеном
entity_aliasstringнетИмя псевдонима сущности, связываемого с этим токеном
explicit_max_ttlstringнетЯвный максимальный TTL этого токена
idstringнетЗначение токена
leasestringнет⚠️ Устарело. Используйте вместо этого ’ttl'.
metaobjectнетПроизвольные метаданные вида ключ=значение, связываемые с токеном
no_default_policybooleanнетНе включать политику по умолчанию для этого токена
no_parentbooleanнетСоздать токен без родителя
num_usesintegerнетМаксимальное количество использований этого токена
periodstringнетПериод продления
policiesarrayнетСписок политик для токена
renewableboolean (default: True)нетРазрешить продление токена после истечения начального TTL вплоть до максимального TTL системы или точки монтирования
ttlstringнетВремя жизни этого токена
typestringнетТип токена

Ответы

200: OK

POST /auth/token/create/{role_name}

ID операции: token-create-against-role

Создает новые токены в соответствии с указанной ролью.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли

Параметры тела запроса

ПараметрТипОбязательныйОписание
display_namestringнетИмя, связываемое с этим токеном
entity_aliasstringнетИмя псевдонима сущности, связываемого с этим токеном
explicit_max_ttlstringнетЯвный максимальный TTL этого токена
idstringнетЗначение токена
leasestringнет⚠️ Устарело. Используйте вместо этого ’ttl'.
metaobjectнетПроизвольные метаданные вида ключ=значение, связываемые с токеном
no_default_policybooleanнетНе включать политику по умолчанию для этого токена
no_parentbooleanнетСоздать токен без родителя
num_usesintegerнетМаксимальное количество использований этого токена
periodstringнетПериод продления
policiesarrayнетСписок политик для токена
renewableboolean (default: True)нетРазрешить продление токена после истечения начального TTL вплоть до максимального TTL системы или точки монтирования
ttlstringнетВремя жизни этого токена
typestringнетТип токена

Ответы

200: OK

GET /auth/token/lookup

ID операции: token-look-up-2

Возвращает токен и его свойства.

Ответы

200: OK

POST /auth/token/lookup

ID операции: token-look-up

Возвращает токен и его свойства.

Параметры тела запроса

ПараметрТипОбязательныйОписание
tokenstringнетТокен, сведения о котором нужно получить (тело POST-запроса)

Ответы

200: OK

POST /auth/token/lookup-accessor

ID операции: token-look-up-accessor

Возвращает свойства токена, связанного с указанным аксессором. Ответ не содержит идентификатор токена.

Параметры тела запроса

ПараметрТипОбязательныйОписание
accessorstringнетАксессор токена, сведения о котором нужно получить (тело запроса)

Ответы

200: OK

GET /auth/token/lookup-self

ID операции: token-look-up-self

Возвращает токен и его свойства.

Ответы

200: OK

POST /auth/token/lookup-self

ID операции: token-look-up-self2

Возвращает токен и его свойства.

Параметры тела запроса

ПараметрТипОбязательныйОписание
tokenstringнетТокен, сведения о котором нужно получить (не используется, задавать не нужно)

Ответы

200: OK

POST /auth/token/renew

ID операции: token-renew

Продлевает указанный токен, не давая истечь сроку его действия.

Параметры тела запроса

ПараметрТипОбязательныйОписание
incrementinteger (default: 0)нетЖелаемое увеличение срока действия токена в секундах
tokenstringнетПродлеваемый токен (тело запроса)

Ответы

200: OK

POST /auth/token/renew-accessor

ID операции: token-renew-accessor

Продлевает токен, связанный с указанным аксессором. Ответ не содержит идентификатор токена.

Параметры тела запроса

ПараметрТипОбязательныйОписание
accessorstringнетАксессор продлеваемого токена (тело запроса)
incrementinteger (default: 0)нетЖелаемое увеличение срока действия токена в секундах

Ответы

200: OK

POST /auth/token/renew-self

ID операции: token-renew-self

Продлевает токен, которым выполнен вызов, не давая истечь сроку его действия.

Параметры тела запроса

ПараметрТипОбязательныйОписание
incrementinteger (default: 0)нетЖелаемое увеличение срока действия токена в секундах
tokenstringнетПродлеваемый токен (не используется, задавать не нужно)

Ответы

200: OK

POST /auth/token/revoke

ID операции: token-revoke

Удаляет заданный токен и все его дочерние токены.

Параметры тела запроса

ПараметрТипОбязательныйОписание
tokenstringнетОтзываемый токен (тело запроса)

Ответы

200: OK

POST /auth/token/revoke-accessor

ID операции: token-revoke-accessor

Удаляет токен, связанный с аксессором, и все его дочерние токены.

Параметры тела запроса

ПараметрТипОбязательныйОписание
accessorstringнетАксессор токена (тело запроса)

Ответы

200: OK

POST /auth/token/revoke-orphan

ID операции: token-revoke-orphan

Удаляет токен, а его дочерние токены делает сиротами.

Параметры тела запроса

ПараметрТипОбязательныйОписание
tokenstringнетОтзываемый токен (тело запроса)

Ответы

200: OK

POST /auth/token/revoke-self

ID операции: token-revoke-self

Удаляет токен, которым выполнен вызов, и все его дочерние токены.

Ответы

200: OK

GET /auth/token/roles

ID операции: token-list-roles

Возвращает список настроенных ролей.

Параметры

ПараметрТипРасположениеОбязательныйОписание
liststring (true)queryдаДолжно быть установлено значение true.

Ответы

200: OK

GET /auth/token/roles/{role_name}

ID операции: token-read-role

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли

Ответы

200: OK

POST /auth/token/roles/{role_name}

ID операции: token-write-role

Поддерживается создание: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли

Параметры тела запроса

ПараметрТипОбязательныйОписание
allowed_entity_aliasesarrayнетСтрока или JSON-список разрешенных псевдонимов сущностей. Если задан, определяет псевдонимы сущностей, которые разрешено использовать при генерации токенов. Поддерживает glob-шаблоны.
allowed_policiesarrayнетЕсли задан, токены можно создавать с любым подмножеством политик из этого списка, а не только с подмножеством политик вызывающего токена, как обычно. Значение — строка имен политик через запятую.
allowed_policies_globarrayнетЕсли задан, токены можно создавать с любым подмножеством политик, соответствующих glob-шаблонам из этого списка, а не только с подмножеством политик вызывающего токена, как обычно. Значение — строка glob-шаблонов имен политик через запятую.
bound_cidrsarrayнет⚠️ Устарело. Используйте вместо этого ’token_bound_cidrs'.
disallowed_policiesarrayнетЕсли задан, токен через эту роль будет создан, только если не запрошена ни одна политика из этого списка. Значение — строка имен политик через запятую.
disallowed_policies_globarrayнетЕсли задан, токен через эту роль будет создан, только если ни одна из запрошенных политик не соответствует glob-шаблонам из этого списка. Значение — строка glob-шаблонов имен политик через запятую.
explicit_max_ttlintegerнет⚠️ Устарело. Используйте вместо этого ’token_explicit_max_ttl'.
orphanbooleanнетЕсли true, токены, созданные через эту роль, будут токенами-сиротами (без родителя).
path_suffixstringнетЕсли задан, токены, созданные через эту роль, будут содержать указанный суффикс в своем пути. Это упрощает последующее использование конечной точки ‘revoke-prefix’. Суффикс должен соответствовать регулярному выражению \w[\w-.]+\w
periodintegerнет⚠️ Устарело. Используйте вместо этого ’token_period’.
renewableboolean (default: True)нетОпределяет, можно ли продлевать токены, созданные через эту роль. По умолчанию “true”.
token_bound_cidrsarrayнетСтрока значений через запятую или JSON-список CIDR-блоков. Если задан, определяет диапазоны IP-адресов, которым разрешено использовать сгенерированный токен.
token_explicit_max_ttlintegerнетЕсли задан, токены, созданные через эту роль, получают явный максимальный TTL. При продлении текущие значения максимального TTL роли и точки монтирования не проверяются, и их изменение не влияет на продлеваемый токен.
token_no_default_policybooleanнетЕсли true, политика ‘default’ не будет автоматически добавляться к сгенерированным токенам
token_num_usesintegerнетМаксимальное количество использований токена; 0 означает без ограничений
token_periodintegerнетЕсли задан, токены, созданные через эту роль, не будут иметь максимального срока жизни; вместо этого их период продления фиксируется на этом значении. Принимает целое число секунд или строку длительности (например, “24h”).
token_typestring (default: default-service)нетТип генерируемого токена: service или batch

Ответы

200: OK

DELETE /auth/token/roles/{role_name}

ID операции: token-delete-role

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли

Ответы

204: пустое тело

POST /auth/token/tidy

ID операции: token-tidy

Выполняет задачи очистки, которые можно запустить при возникновении определенных ошибок.

Ответы

200: OK

POST /auth/{approle_mount_path}/login

ID операции: app-role-login

Выдает токен на основе предоставленных учетных данных

Доступен без аутентификации: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
role_idstringнетУникальный идентификатор роли. Обязателен, если установлено ограничение ‘bind_secret_id’.
secret_idstring (default: )нетSecretID, принадлежащий роли AppRole

Ответы

200: OK

GET /auth/{approle_mount_path}/role

ID операции: app-role-list-roles

Возвращает список всех ролей, зарегистрированных в бэкенде.

Параметры

ПараметрТипРасположениеОбязательныйОписание
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд
liststring (true)queryдаДолжно быть установлено значение true.

Ответы

200: OK

ПараметрТипОбязательныйОписание
keysarrayнет

GET /auth/{approle_mount_path}/role/{role_name}

ID операции: app-role-read-role

Регистрирует роль в бэкенде.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

ПараметрТипОбязательныйОписание
bind_secret_idbooleanнетТребовать предъявления SecretID при входе с этой ролью.
local_secret_idsbooleanнетЕсли true, SecretID, сгенерированные с помощью этой роли, будут локальными для кластера. Параметр можно задать только при создании роли, после этого его нельзя изменить
periodintegerнет⚠️ Устарело. Используйте вместо этого “token_period”. Если указаны оба параметра, используется только “token_period”.
policiesarrayнет⚠️ Устарело. Используйте вместо этого “token_policies”. Если указаны оба параметра, используется только “token_policies”.
secret_id_bound_cidrsarrayнетСтрока значений через запятую или список CIDR-блоков. Если задан, определяет диапазоны IP-адресов, с которых разрешен вход.
secret_id_num_usesintegerнетСколько раз SecretID можно использовать для доступа к роли, после чего срок его действия истекает.
secret_id_ttlintegerнетВремя в секундах, по истечении которого выданный SecretID становится недействительным.
token_bound_cidrsarrayнетСтрока значений через запятую или JSON-список CIDR-блоков. Если задан, определяет диапазоны IP-адресов, которым разрешено использовать сгенерированный токен.
token_explicit_max_ttlintegerнетЕсли задан, токены, созданные через эту роль, получают явный максимальный TTL. При продлении текущие значения максимального TTL роли и точки монтирования не проверяются, и их изменение не влияет на продлеваемый токен.
token_max_ttlintegerнетМаксимальное время жизни сгенерированного токена
token_no_default_policybooleanнетЕсли true, политика ‘default’ не будет автоматически добавляться к сгенерированным токенам
token_num_usesintegerнетМаксимальное количество использований токена; 0 означает без ограничений
token_periodintegerнетЕсли задан, токены, созданные через эту роль, не будут иметь максимального срока жизни; вместо этого их период продления фиксируется на этом значении.
token_policiesarrayнетСписок политик через запятую
token_ttlintegerнетНачальный TTL генерируемого токена
token_typestring (default: default-service)нетТип генерируемого токена: service или batch

POST /auth/{approle_mount_path}/role/{role_name}

ID операции: app-role-write-role

Регистрирует роль в бэкенде.

Поддерживается создание: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
bind_secret_idboolean (default: True)нетТребовать предъявления secret_id при входе с этой ролью. По умолчанию ’true’.
bound_cidr_listarrayнет⚠️ Устарело. Используйте вместо этого “secret_id_bound_cidrs”.
local_secret_idsbooleanнетЕсли задан, SecretID, сгенерированные с помощью этой роли, будут локальными для кластера. Параметр можно задать только при создании роли, после этого его нельзя изменить.
periodintegerнет⚠️ Устарело. Используйте вместо этого “token_period”. Если указаны оба параметра, используется только “token_period”.
policiesarrayнет⚠️ Устарело. Используйте вместо этого “token_policies”. Если указаны оба параметра, используется только “token_policies”.
role_idstringнетИдентификатор роли. По умолчанию — UUID.
secret_id_bound_cidrsarrayнетСтрока значений через запятую или список CIDR-блоков. Если задан, определяет диапазоны IP-адресов, с которых разрешен вход.
secret_id_num_usesintegerнетСколько раз SecretID можно использовать для доступа к роли, после чего срок его действия истекает. По умолчанию 0 — без ограничений.
secret_id_ttlintegerнетВремя в секундах, по истечении которого выданный SecretID становится недействительным. По умолчанию 0 — бессрочно.
token_bound_cidrsarrayнетСтрока значений через запятую или JSON-список CIDR-блоков. Если задан, определяет диапазоны IP-адресов, которым разрешено использовать сгенерированный токен.
token_explicit_max_ttlintegerнетЕсли задан, токены, созданные через эту роль, получают явный максимальный TTL. При продлении текущие значения максимального TTL роли и точки монтирования не проверяются, и их изменение не влияет на продлеваемый токен.
token_max_ttlintegerнетМаксимальное время жизни сгенерированного токена
token_no_default_policybooleanнетЕсли true, политика ‘default’ не будет автоматически добавляться к сгенерированным токенам
token_num_usesintegerнетМаксимальное количество использований токена; 0 означает без ограничений
token_periodintegerнетЕсли задан, токены, созданные через эту роль, не будут иметь максимального срока жизни; вместо этого их период продления фиксируется на этом значении. Принимает целое число секунд или строку длительности (например, “24h”).
token_policiesarrayнетСписок политик через запятую
token_ttlintegerнетНачальный TTL генерируемого токена
token_typestring (default: default-service)нетТип генерируемого токена: service или batch

Ответы

200: OK

DELETE /auth/{approle_mount_path}/role/{role_name}

ID операции: app-role-delete-role

Регистрирует роль в бэкенде.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: No Content

GET /auth/{approle_mount_path}/role/{role_name}/bind-secret-id

ID операции: app-role-read-bind-secret-id

Требовать предъявления secret_id при входе с этой ролью.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

ПараметрТипОбязательныйОписание
bind_secret_idbooleanнетТребовать предъявления secret_id при входе с этой ролью. По умолчанию ’true’.

POST /auth/{approle_mount_path}/role/{role_name}/bind-secret-id

ID операции: app-role-write-bind-secret-id

Требовать предъявления secret_id при входе с этой ролью.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
bind_secret_idboolean (default: True)нетТребовать предъявления secret_id при входе с этой ролью.

Ответы

204: No Content

DELETE /auth/{approle_mount_path}/role/{role_name}/bind-secret-id

ID операции: app-role-delete-bind-secret-id

Требовать предъявления secret_id при входе с этой ролью.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: No Content

GET /auth/{approle_mount_path}/role/{role_name}/bound-cidr-list

ID операции: app-role-read-bound-cidr-list

Устарело: список CIDR-блоков через запятую; если задан, определяет диапазоны IP-адресов, с которых разрешен вход

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

ПараметрТипОбязательныйОписание
bound_cidr_listarrayнет⚠️ Устарело. Устарело: используйте вместо этого “secret_id_bound_cidrs”. Строка значений через запятую или список CIDR-блоков. Если задан, определяет диапазоны IP-адресов, с которых разрешен вход.

POST /auth/{approle_mount_path}/role/{role_name}/bound-cidr-list

ID операции: app-role-write-bound-cidr-list

Устарело: список CIDR-блоков через запятую; если задан, определяет диапазоны IP-адресов, с которых разрешен вход

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
bound_cidr_listarrayнетУстарело: используйте вместо этого “secret_id_bound_cidrs”. Строка значений через запятую или список CIDR-блоков. Если задан, определяет диапазоны IP-адресов, с которых разрешен вход.

Ответы

204: No Content

DELETE /auth/{approle_mount_path}/role/{role_name}/bound-cidr-list

ID операции: app-role-delete-bound-cidr-list

Устарело: список CIDR-блоков через запятую; если задан, определяет диапазоны IP-адресов, с которых разрешен вход

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: No Content

POST /auth/{approle_mount_path}/role/{role_name}/custom-secret-id

ID операции: app-role-write-custom-secret-id

Назначить роли произвольный SecretID.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
cidr_listarrayнетСтрока значений через запятую или список CIDR-блоков, с которых разрешено использовать SecretID. Если для роли задан ‘bound_cidr_list’, перечисленные здесь CIDR-блоки должны быть подмножеством CIDR-блоков роли.
metadatastringнетМетаданные, привязываемые к SecretID: строка в формате JSON с метаданными в виде пар «ключ — значение».
num_usesintegerнетСколько раз можно использовать этот SecretID, после чего срок его действия истекает. Если указан, переопределяет параметр роли secret_id_num_uses. Не может превышать secret_id_num_uses роли.
secret_idstringнетSecretID, привязываемый к роли.
token_bound_cidrsarrayнетСтрока значений через запятую или список CIDR-блоков. Если задан, определяет диапазоны IP-адресов, которым разрешено использовать возвращенный токен. Должен быть подмножеством CIDR-блоков токена, указанных в роли (если они заданы).
ttlintegerнетВремя в секундах, по истечении которого этот SecretID становится недействительным. Если указан, переопределяет параметр роли secret_id_ttl. Не может превышать secret_id_ttl роли.

Ответы

200: OK

ПараметрТипОбязательныйОписание
secret_idstringнетSecretID, привязанный к роли.
secret_id_accessorstringнетАксессор SecretID
secret_id_num_usesintegerнетСколько раз SecretID можно использовать для доступа к роли, после чего срок его действия истекает.
secret_id_ttlintegerнетВремя в секундах, по истечении которого выданный SecretID становится недействительным.

GET /auth/{approle_mount_path}/role/{role_name}/local-secret-ids

ID операции: app-role-read-local-secret-ids

Включает локальные для кластера SecretID

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

ПараметрТипОбязательныйОписание
local_secret_idsbooleanнетЕсли true, SecretID, сгенерированные с помощью этой роли, будут локальными для кластера. Параметр можно задать только при создании роли, после этого его нельзя изменить

GET /auth/{approle_mount_path}/role/{role_name}/period

ID операции: app-role-read-period

Обновляет значение ‘period’ в роли

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

ПараметрТипОбязательныйОписание
periodintegerнет⚠️ Устарело. Используйте вместо этого “token_period”. Если указаны оба параметра, используется только “token_period”.
token_periodintegerнетЕсли задан, токены, созданные через эту роль, не будут иметь максимального срока жизни; вместо этого их период продления фиксируется на этом значении. Принимает целое число секунд или строку длительности (например, “24h”).

POST /auth/{approle_mount_path}/role/{role_name}/period

ID операции: app-role-write-period

Обновляет значение ‘period’ в роли

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
periodintegerнет⚠️ Устарело. Используйте вместо этого “token_period”. Если указаны оба параметра, используется только “token_period”.
token_periodintegerнетЕсли задан, токены, созданные через эту роль, не будут иметь максимального срока жизни; вместо этого их период продления фиксируется на этом значении. Принимает целое число секунд или строку длительности (например, “24h”).

Ответы

204: No Content

DELETE /auth/{approle_mount_path}/role/{role_name}/period

ID операции: app-role-delete-period

Обновляет значение ‘period’ в роли

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: No Content

GET /auth/{approle_mount_path}/role/{role_name}/policies

ID операции: app-role-read-policies

Политики роли.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

ПараметрТипОбязательныйОписание
policiesarrayнет⚠️ Устарело. Используйте вместо этого “token_policies”. Если указаны оба параметра, используется только “token_policies”.
token_policiesarrayнетСписок политик через запятую

POST /auth/{approle_mount_path}/role/{role_name}/policies

ID операции: app-role-write-policies

Политики роли.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
policiesarrayнет⚠️ Устарело. Используйте вместо этого “token_policies”. Если указаны оба параметра, используется только “token_policies”.
token_policiesarrayнетСписок политик через запятую

Ответы

204: No Content

DELETE /auth/{approle_mount_path}/role/{role_name}/policies

ID операции: app-role-delete-policies

Политики роли.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: No Content

GET /auth/{approle_mount_path}/role/{role_name}/role-id

ID операции: app-role-read-role-id

Возвращает ‘role_id’ роли.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

ПараметрТипОбязательныйОписание
role_idstringнетИдентификатор роли. По умолчанию — UUID.

POST /auth/{approle_mount_path}/role/{role_name}/role-id

ID операции: app-role-write-role-id

Возвращает ‘role_id’ роли.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
role_idstringнетИдентификатор роли. По умолчанию — UUID.

Ответы

204: No Content

GET /auth/{approle_mount_path}/role/{role_name}/secret-id

ID операции: app-role-list-secret-ids

Сгенерировать SecretID для этой роли.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд
liststring (true)queryдаДолжно быть установлено значение true.

Ответы

200: OK

ПараметрТипОбязательныйОписание
keysarrayнет

POST /auth/{approle_mount_path}/role/{role_name}/secret-id

ID операции: app-role-write-secret-id

Сгенерировать SecretID для этой роли.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
cidr_listarrayнетСтрока значений через запятую или список CIDR-блоков, с которых разрешено использовать SecretID. Если для роли задан ‘bound_cidr_list’, перечисленные здесь CIDR-блоки должны быть подмножеством CIDR-блоков роли.
metadatastringнетМетаданные, привязываемые к SecretID: строка в формате JSON с метаданными в виде пар «ключ — значение».
num_usesintegerнетСколько раз можно использовать этот SecretID, после чего срок его действия истекает. Если указан, переопределяет параметр роли secret_id_num_uses. Не может превышать secret_id_num_uses роли.
token_bound_cidrsarrayнетСтрока значений через запятую или JSON-список CIDR-блоков. Если задан, определяет диапазоны IP-адресов, которым разрешено использовать сгенерированный токен.
ttlintegerнетВремя в секундах, по истечении которого этот SecretID становится недействительным. Если указан, переопределяет параметр роли secret_id_ttl. Не может превышать secret_id_ttl роли.

Ответы

200: OK

ПараметрТипОбязательныйОписание
secret_idstringнетSecretID, привязанный к роли.
secret_id_accessorstringнетАксессор SecretID
secret_id_num_usesintegerнетСколько раз SecretID можно использовать для доступа к роли, после чего срок его действия истекает.
secret_id_ttlintegerнетВремя в секундах, по истечении которого выданный SecretID становится недействительным.

POST /auth/{approle_mount_path}/role/{role_name}/secret-id-accessor/destroy

ID операции: app-role-destroy-secret-id-by-accessor

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
secret_id_accessorstringнетАксессор SecretID

Ответы

204: No Content

DELETE /auth/{approle_mount_path}/role/{role_name}/secret-id-accessor/destroy

ID операции: app-role-destroy-secret-id-by-accessor2

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: No Content

POST /auth/{approle_mount_path}/role/{role_name}/secret-id-accessor/lookup

ID операции: app-role-look-up-secret-id-by-accessor

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
secret_id_accessorstringнетАксессор SecretID

Ответы

200: OK

ПараметрТипОбязательныйОписание
cidr_listarrayнетСписок CIDR-блоков, с которых разрешено использовать SecretID. Если для роли задан ‘bound_cidr_list’, перечисленные здесь CIDR-блоки должны быть подмножеством CIDR-блоков роли.
creation_timestringнет
expiration_timestringнет
last_updated_timestringнет
metadataobjectнет
secret_id_accessorstringнетАксессор SecretID
secret_id_num_usesintegerнетСколько раз SecretID можно использовать для доступа к роли, после чего срок его действия истекает.
secret_id_ttlintegerнетВремя в секундах, по истечении которого выданный SecretID становится недействительным.
token_bound_cidrsarrayнетСписок CIDR-блоков. Если задан, определяет диапазоны IP-адресов, которым разрешено использовать возвращенный токен. Должен быть подмножеством CIDR-блоков токена, указанных в роли (если они заданы).

GET /auth/{approle_mount_path}/role/{role_name}/secret-id-bound-cidrs

ID операции: app-role-read-secret-id-bound-cidrs

Список CIDR-блоков через запятую; если задан, определяет диапазоны IP-адресов, с которых разрешен вход

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

ПараметрТипОбязательныйОписание
secret_id_bound_cidrsarrayнетСтрока значений через запятую или список CIDR-блоков. Если задан, определяет диапазоны IP-адресов, с которых разрешен вход.

POST /auth/{approle_mount_path}/role/{role_name}/secret-id-bound-cidrs

ID операции: app-role-write-secret-id-bound-cidrs

Список CIDR-блоков через запятую; если задан, определяет диапазоны IP-адресов, с которых разрешен вход

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
secret_id_bound_cidrsarrayнетСтрока значений через запятую или список CIDR-блоков. Если задан, определяет диапазоны IP-адресов, с которых разрешен вход.

Ответы

204: No Content

DELETE /auth/{approle_mount_path}/role/{role_name}/secret-id-bound-cidrs

ID операции: app-role-delete-secret-id-bound-cidrs

Список CIDR-блоков через запятую; если задан, определяет диапазоны IP-адресов, с которых разрешен вход

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: No Content

GET /auth/{approle_mount_path}/role/{role_name}/secret-id-num-uses

ID операции: app-role-read-secret-id-num-uses

Лимит использований SecretID, сгенерированных для этой роли.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

ПараметрТипОбязательныйОписание
secret_id_num_usesintegerнетСколько раз SecretID можно использовать для доступа к роли, после чего срок его действия истекает. По умолчанию 0 — без ограничений.

POST /auth/{approle_mount_path}/role/{role_name}/secret-id-num-uses

ID операции: app-role-write-secret-id-num-uses

Лимит использований SecretID, сгенерированных для этой роли.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
secret_id_num_usesintegerнетСколько раз SecretID можно использовать для доступа к роли, после чего срок его действия истекает.

Ответы

204: No Content

DELETE /auth/{approle_mount_path}/role/{role_name}/secret-id-num-uses

ID операции: app-role-delete-secret-id-num-uses

Лимит использований SecretID, сгенерированных для этой роли.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: No Content

GET /auth/{approle_mount_path}/role/{role_name}/secret-id-ttl

ID операции: app-role-read-secret-id-ttl

Срок действия в секундах для SecretID, сгенерированных для этой роли.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

ПараметрТипОбязательныйОписание
secret_id_ttlintegerнетВремя в секундах, по истечении которого выданный SecretID становится недействительным. По умолчанию 0 — бессрочно.

POST /auth/{approle_mount_path}/role/{role_name}/secret-id-ttl

ID операции: app-role-write-secret-id-ttl

Срок действия в секундах для SecretID, сгенерированных для этой роли.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
secret_id_ttlintegerнетВремя в секундах, по истечении которого выданный SecretID становится недействительным. По умолчанию 0 — бессрочно.

Ответы

204: No Content

DELETE /auth/{approle_mount_path}/role/{role_name}/secret-id-ttl

ID операции: app-role-delete-secret-id-ttl

Срок действия в секундах для SecretID, сгенерированных для этой роли.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: No Content

POST /auth/{approle_mount_path}/role/{role_name}/secret-id/destroy

ID операции: app-role-destroy-secret-id

Аннулировать выданный secret_id

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
secret_idstringнетSecretID, привязанный к роли.

Ответы

204: No Content

DELETE /auth/{approle_mount_path}/role/{role_name}/secret-id/destroy

ID операции: app-role-destroy-secret-id2

Аннулировать выданный secret_id

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: No Content

POST /auth/{approle_mount_path}/role/{role_name}/secret-id/lookup

ID операции: app-role-look-up-secret-id

Прочитать свойства выданного secret_id

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
secret_idstringнетSecretID, привязанный к роли.

Ответы

200: OK

ПараметрТипОбязательныйОписание
cidr_listarrayнетСписок CIDR-блоков, с которых разрешено использовать SecretID. Если для роли задан ‘bound_cidr_list’, перечисленные здесь CIDR-блоки должны быть подмножеством CIDR-блоков роли.
creation_timestringнет
expiration_timestringнет
last_updated_timestringнет
metadataobjectнет
secret_id_accessorstringнетАксессор SecretID
secret_id_num_usesintegerнетСколько раз SecretID можно использовать для доступа к роли, после чего срок его действия истекает.
secret_id_ttlintegerнетВремя в секундах, по истечении которого выданный SecretID становится недействительным.
token_bound_cidrsarrayнетСписок CIDR-блоков. Если задан, определяет диапазоны IP-адресов, которым разрешено использовать возвращенный токен. Должен быть подмножеством CIDR-блоков токена, указанных в роли (если они заданы).

GET /auth/{approle_mount_path}/role/{role_name}/token-bound-cidrs

ID операции: app-role-read-token-bound-cidrs

Строка через запятую или список CIDR-блоков. Если задан, определяет диапазоны IP-адресов, которым разрешено использовать возвращаемый токен.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

ПараметрТипОбязательныйОписание
token_bound_cidrsarrayнетСтрока значений через запятую или список CIDR-блоков. Если задан, определяет диапазоны IP-адресов, которым разрешено использовать возвращенный токен. Должен быть подмножеством CIDR-блоков токена, указанных в роли (если они заданы).

POST /auth/{approle_mount_path}/role/{role_name}/token-bound-cidrs

ID операции: app-role-write-token-bound-cidrs

Строка через запятую или список CIDR-блоков. Если задан, определяет диапазоны IP-адресов, которым разрешено использовать возвращаемый токен.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
token_bound_cidrsarrayнетСтрока значений через запятую или JSON-список CIDR-блоков. Если задан, определяет диапазоны IP-адресов, которым разрешено использовать сгенерированный токен.

Ответы

204: No Content

DELETE /auth/{approle_mount_path}/role/{role_name}/token-bound-cidrs

ID операции: app-role-delete-token-bound-cidrs

Строка через запятую или список CIDR-блоков. Если задан, определяет диапазоны IP-адресов, которым разрешено использовать возвращаемый токен.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: No Content

GET /auth/{approle_mount_path}/role/{role_name}/token-max-ttl

ID операции: app-role-read-token-max-ttl

Максимальное время жизни в секундах для токенов, выданных с помощью SecretID этой роли; по его истечении продлить токены нельзя.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

ПараметрТипОбязательныйОписание
token_max_ttlintegerнетМаксимальное время жизни сгенерированного токена

POST /auth/{approle_mount_path}/role/{role_name}/token-max-ttl

ID операции: app-role-write-token-max-ttl

Максимальное время жизни в секундах для токенов, выданных с помощью SecretID этой роли; по его истечении продлить токены нельзя.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
token_max_ttlintegerнетМаксимальное время жизни сгенерированного токена

Ответы

204: No Content

DELETE /auth/{approle_mount_path}/role/{role_name}/token-max-ttl

ID операции: app-role-delete-token-max-ttl

Максимальное время жизни в секундах для токенов, выданных с помощью SecretID этой роли; по его истечении продлить токены нельзя.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: No Content

GET /auth/{approle_mount_path}/role/{role_name}/token-num-uses

ID операции: app-role-read-token-num-uses

Сколько раз можно использовать выданные токены

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

ПараметрТипОбязательныйОписание
token_num_usesintegerнетМаксимальное количество использований токена; 0 означает без ограничений

POST /auth/{approle_mount_path}/role/{role_name}/token-num-uses

ID операции: app-role-write-token-num-uses

Сколько раз можно использовать выданные токены

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
token_num_usesintegerнетМаксимальное количество использований токена; 0 означает без ограничений

Ответы

204: No Content

DELETE /auth/{approle_mount_path}/role/{role_name}/token-num-uses

ID операции: app-role-delete-token-num-uses

Сколько раз можно использовать выданные токены

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: No Content

GET /auth/{approle_mount_path}/role/{role_name}/token-ttl

ID операции: app-role-read-token-ttl

Время жизни в секундах для токена, выданного с помощью SecretID этой роли; до его истечения токен необходимо продлить.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

ПараметрТипОбязательныйОписание
token_ttlintegerнетНачальный TTL генерируемого токена

POST /auth/{approle_mount_path}/role/{role_name}/token-ttl

ID операции: app-role-write-token-ttl

Время жизни в секундах для токена, выданного с помощью SecretID этой роли; до его истечения токен необходимо продлить.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
token_ttlintegerнетНачальный TTL генерируемого токена

Ответы

204: No Content

DELETE /auth/{approle_mount_path}/role/{role_name}/token-ttl

ID операции: app-role-delete-token-ttl

Время жизни в секундах для токена, выданного с помощью SecretID этой роли; до его истечения токен необходимо продлить.

Параметры

ПараметрТипРасположениеОбязательныйОписание
role_namestringpathдаИмя роли. Должно быть короче 4096 байт.
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: No Content

POST /auth/{approle_mount_path}/tidy/secret-id

ID операции: app-role-tidy-secret-id

Запустить очистку записей SecretID с истекшим сроком действия.

Параметры

ПараметрТипРасположениеОбязательныйОписание
approle_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

202: Принято

GET /auth/{jwt_mount_path}/config

ID операции: jwt-read-configuration

Прочитать текущую конфигурацию бэкенда аутентификации JWT.

Параметры

ПараметрТипРасположениеОбязательныйОписание
jwt_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

POST /auth/{jwt_mount_path}/config

ID операции: jwt-configure

Настроить бэкенд аутентификации JWT.

Параметры

ПараметрТипРасположениеОбязательныйОписание
jwt_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
bound_issuerstringнетЗначение, с которым сравнивается утверждение (claim) ‘iss’ в JWT. Необязательно.
default_rolestringнетРоль по умолчанию, если при входе роль не указана. Если не задана, при входе роль обязательна.
jwks_ca_pemstringнетCA-сертификат или цепочка сертификатов в формате PEM для проверки подключений к JWKS URL. Если не задан, используются системные сертификаты.
jwks_pairsarrayнетНабор пар из JWKS URL и CA-сертификата (или цепочки сертификатов). CA-сертификаты должны быть в формате PEM. Нельзя использовать вместе с “jwks_url” или “jwks_ca_pem”.
jwks_urlstringнетJWKS URL для проверки подписей. Нельзя использовать вместе с “oidc_discovery_url” или “jwt_validation_pubkeys”.
jwt_supported_algsarrayнетСписок поддерживаемых алгоритмов подписи. По умолчанию используется RS256.
jwt_validation_pubkeysarrayнетСписок открытых ключей в формате PEM для локальной проверки подписей. Нельзя использовать вместе с “jwks_url” или “oidc_discovery_url”.
namespace_in_statebooleanнетПередавать пространство имен в параметре state OIDC, а не отдельным параметром запроса. В этом режиме разрешенные URL перенаправления в Stronghold и на стороне провайдера не должны содержать параметр запроса namespace. Благодаря этому на стороне провайдера достаточно одной записи URL перенаправления для всех пространств имен Stronghold, которые через него аутентифицируются. Для новых конфигураций по умолчанию true.
oidc_client_idstringнетИдентификатор клиента OAuth (Client ID), настроенный у провайдера OIDC.
oidc_client_secretstringнетСекрет клиента OAuth (Client Secret), настроенный у провайдера OIDC.
oidc_discovery_ca_pemstringнетCA-сертификат или цепочка сертификатов в формате PEM для проверки подключений к OIDC Discovery URL. Если не задан, используются системные сертификаты.
oidc_discovery_urlstringнетOIDC Discovery URL без компонента .well-known (базовый путь). Нельзя использовать вместе с “jwks_url” или “jwt_validation_pubkeys”.
oidc_response_modestringнетРежим ответа (response mode) в запросе OAuth2. Допустимые значения: ‘query’ и ‘form_post’.
oidc_response_typesarrayнетЗапрашиваемые типы ответа. Допустимые значения: ‘code’ и ‘id_token’. По умолчанию ‘code’.
provider_configobjectнетСпецифичная для провайдера конфигурация. Необязательно.
unsupported_critical_cert_extensionsarrayнетСписок ASN1 OID расширений сертификата с пометкой Critical, которые не поддерживаются Stronghold и должны игнорироваться. Этот параметр требуется крайне редко, разве что в специализированных PKI-окружениях.

Ответы

200: OK

POST /auth/{jwt_mount_path}/login

ID операции: jwt-login

Аутентификация в Stronghold с помощью токена JWT (или OIDC).

Доступен без аутентификации: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
jwt_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
distributed_claim_access_tokenstringнетНеобязательный токен для получения членства в группах, заданного распределенным источником утверждений (distributed claims) в JWT. Поддерживается только для Azure/Entra ID
jwtstringнетПодписанный JWT для проверки.
rolestringнетРоль, с которой выполняется вход.

Ответы

200: OK

POST /auth/{jwt_mount_path}/oidc/auth_url

ID операции: jwt-oidc-request-authorization-url

Запросить URL авторизации для запуска входа через OIDC.

Доступен без аутентификации: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
jwt_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
client_noncestringнетНеобязательный nonce, переданный клиентом; если указан, должен совпадать при обратном вызове.
redirect_uristringнетOAuth redirect_uri, используемый в URL авторизации.
rolestringнетРоль, для которой выдается URL авторизации OIDC.

Ответы

200: OK

GET /auth/{jwt_mount_path}/oidc/callback

ID операции: jwt-oidc-callback

Конечная точка обратного вызова для завершения входа через OIDC.

Доступен без аутентификации: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
client_noncestringqueryнет
codestringqueryнет
statestringqueryнет
jwt_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

POST /auth/{jwt_mount_path}/oidc/callback

ID операции: jwt-oidc-callback-form-post

Конечная точка обратного вызова для обработки form_post.

Доступен без аутентификации: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
client_noncestringqueryнет
codestringqueryнет
statestringqueryнет
jwt_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
id_tokenstringнет

Ответы

200: OK

GET /auth/{jwt_mount_path}/role

ID операции: jwt-list-roles

Возвращает список всех ролей, зарегистрированных в бэкенде.

Параметры

ПараметрТипРасположениеОбязательныйОписание
jwt_mount_pathstringpathдаПуть, по которому смонтирован бэкенд
liststring (true)queryдаДолжно быть установлено значение true.

Ответы

200: OK

GET /auth/{jwt_mount_path}/role/{name}

ID операции: jwt-read-role

Прочитать существующую роль.

Параметры

ПараметрТипРасположениеОбязательныйОписание
namestringpathдаИмя роли.
jwt_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

POST /auth/{jwt_mount_path}/role/{name}

ID операции: jwt-write-role

Регистрирует роль в бэкенде.

Поддерживается создание: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
namestringpathдаИмя роли.
jwt_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
allowed_redirect_urisarrayнетСписок допустимых значений redirect_uri через запятую
bound_audiencesarrayнетСписок утверждений ‘aud’, допустимых для входа, через запятую; достаточно любого совпадения
bound_cidrsarrayнет⚠️ Устарело. Используйте вместо этого “token_bound_cidrs”. Если указаны оба параметра, используется только “token_bound_cidrs”.
bound_claimsobjectнетКарта утверждений и значений, которые должны совпасть для входа
bound_claims_typestring (default: string)нетКак интерпретировать значения в карте утверждений и значений, которые должны совпасть для входа: допустимые значения ‘string’ или ‘glob’
bound_subjectstringнетУтверждение ‘sub’, допустимое для входа. Необязательно.
claim_mappingsobjectнетСопоставление утверждений (ключ) с полями метаданных (значение), в которые они копируются
clock_skew_leewayinteger (default: 60000000000)нетДопуск в секундах при проверке всех утверждений для компенсации рассинхронизации часов. Значение 0 означает 60 (1 минута), значение -1 отключает допуск.
expiration_leewayinteger (default: 150)нетДопуск в секундах при проверке истечения срока действия токена для компенсации рассинхронизации часов. Значение 0 означает 150 (2,5 минуты), значение -1 отключает допуск.
groups_claimstringнетУтверждение, используемое для имен псевдонимов групп Identity
max_ageintegerнетДопустимое время в секундах, прошедшее с момента последней активной аутентификации пользователя.
max_ttlintegerнет⚠️ Устарело. Используйте вместо этого “token_max_ttl”. Если указаны оба параметра, используется только “token_max_ttl”.
not_before_leewayinteger (default: 150)нетДопуск в секундах при проверке значения not before (nbf) токена для компенсации рассинхронизации часов. Значение 0 означает 150 (2,5 минуты), значение -1 отключает допуск.
num_usesintegerнет⚠️ Устарело. Используйте вместо этого “token_num_uses”. Если указаны оба параметра, используется только “token_num_uses”.
oidc_scopesarrayнетСписок областей (scopes) OIDC через запятую
periodintegerнет⚠️ Устарело. Используйте вместо этого “token_period”. Если указаны оба параметра, используется только “token_period”.
policiesarrayнет⚠️ Устарело. Используйте вместо этого “token_policies”. Если указаны оба параметра, используется только “token_policies”.
role_typestringнетТип роли: ‘jwt’ или ‘oidc’.
token_bound_cidrsarrayнетСтрока значений через запятую или JSON-список CIDR-блоков. Если задан, определяет диапазоны IP-адресов, которым разрешено использовать сгенерированный токен.
token_explicit_max_ttlintegerнетЕсли задан, токены, созданные через эту роль, получают явный максимальный TTL. При продлении текущие значения максимального TTL роли и точки монтирования не проверяются, и их изменение не влияет на продлеваемый токен.
token_max_ttlintegerнетМаксимальное время жизни сгенерированного токена
token_no_default_policybooleanнетЕсли true, политика ‘default’ не будет автоматически добавляться к сгенерированным токенам
token_num_usesintegerнетМаксимальное количество использований токена; 0 означает без ограничений
token_periodintegerнетЕсли задан, токены, созданные через эту роль, не будут иметь максимального срока жизни; вместо этого их период продления фиксируется на этом значении. Принимает целое число секунд или строку длительности (например, “24h”).
token_policiesarrayнетСписок политик через запятую
token_ttlintegerнетНачальный TTL генерируемого токена
token_typestring (default: default-service)нетТип генерируемого токена: service или batch
ttlintegerнет⚠️ Устарело. Используйте вместо этого “token_ttl”. Если указаны оба параметра, используется только “token_ttl”.
user_claimstringнетУтверждение, используемое для имени псевдонима сущности Identity
user_claim_json_pointerbooleanнетЕсли true, в значении user_claim для ссылок на утверждения используется синтаксис JSON Pointer.
verbose_oidc_loggingbooleanнетЗаписывать в журнал полученные токены и утверждения OIDC при уровне логирования debug. Не рекомендуется в production, поскольку ответы OIDC могут содержать конфиденциальные данные.

Ответы

200: OK

DELETE /auth/{jwt_mount_path}/role/{name}

ID операции: jwt-delete-role

Удалить существующую роль.

Параметры

ПараметрТипРасположениеОбязательныйОписание
namestringpathдаИмя роли.
jwt_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: пустое тело

GET /auth/{kerberos_mount_path}/config

ID операции: kerberos-read-configuration

Настраивает keytab Kerberos и сервисный аккаунт.

Параметры

ПараметрТипРасположениеОбязательныйОписание
kerberos_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

POST /auth/{kerberos_mount_path}/config

ID операции: kerberos-configure

Настраивает keytab Kerberos и сервисный аккаунт.

Параметры

ПараметрТипРасположениеОбязательныйОписание
kerberos_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
add_group_aliasesbooleanнетЕсли true, все найденные в LDAP группы возвращаются как псевдонимы групп.
keytabstringнетKeytab в кодировке base64
remove_instance_namebooleanнетУдалить instance/FQDN из имен принципалов в keytab.
service_accountstringнетСервисный аккаунт

Ответы

200: OK

GET /auth/{kerberos_mount_path}/config/ldap

ID операции: kerberos-read-ldap-configuration

Настроить подключение к LDAP-серверу и его параметры.

Параметры

ПараметрТипРасположениеОбязательныйОписание
kerberos_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

POST /auth/{kerberos_mount_path}/config/ldap

ID операции: kerberos-configure-ldap

Настроить подключение к LDAP-серверу и его параметры.

Параметры

ПараметрТипРасположениеОбязательныйОписание
kerberos_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
anonymous_group_searchboolean (default: False)нетИспользовать анонимную привязку (bind) при поиске групп LDAP (если true, исходные учетные данные все равно используются для первичной проверки подключения).
binddnstringнетLDAP DN для поиска DN пользователя (необязательно)
bindpassstringнетПароль LDAP для поиска DN пользователя (необязательно)
case_sensitive_namesbooleanнетЕсли true, при сопоставлении имен пользователей и групп с политиками учитывается регистр.
certificatestringнетCA-сертификат для проверки сертификата LDAP-сервера в формате x509 PEM (необязательно)
client_tls_certstringнетКлиентский сертификат, предъявляемый LDAP-серверу, в формате x509 PEM (необязательно)
client_tls_keystringнетКлюч клиентского сертификата, предъявляемого LDAP-серверу, в формате x509 PEM (необязательно)
connection_timeoutinteger (default: 30s)нетТайм-аут в секундах на подключение к LDAP-серверу, после которого выполняется попытка подключиться по следующему URL из конфигурации.
deny_null_bindboolean (default: True)нет⚠️ Устарело. Отклонять неаутентифицированный запрос привязки (bind) к LDAP, если пароль пользователя пуст; по умолчанию true
dereference_aliasesstring (never, finding, searching, always) (default: never)нетКогда разыменовывать псевдонимы (aliases) при поиске. Допустимые значения: ’never’, ‘finding’, ‘searching’, ‘always’. По умолчанию ’never’.
discoverdnbooleanнетИспользовать анонимную привязку (bind) для определения bind DN пользователя (необязательно)
enable_samaccountname_loginboolean (default: False)нетЕсли true и задан upndomain, вход также разрешается по совпадающим значениям атрибута sAMAccountName.
groupattrstring (default: cn)нетАтрибут LDAP объектов, возвращаемых , по которому определяется членство пользователя в группах. Примеры: “cn”, “memberOf” и т. д. По умолчанию: cn
groupdnstringнетБаза поиска LDAP для поиска членства в группах (например, ou=Groups,dc=example,dc=org)
groupfilterstring (default: (|(memberUid={{.Username}})(member={{.UserDN}})(uniqueMember={{.UserDN}})))нетШаблон Go для запроса членства пользователя в группах (необязательно). В шаблоне доступны переменные контекста: UserDN, Username. Пример: (&(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}})). По умолчанию: (|(memberUid={{.Username}})(member={{.UserDN}})(uniqueMember={{.UserDN}}))
insecure_tlsbooleanнетПропустить проверку SSL-сертификата LDAP-сервера — ОЧЕНЬ небезопасно (необязательно)
max_page_sizeinteger (default: 0)нетЕсли задано значение больше 0, бэкенд LDAP использует постраничный поиск (paged search control) LDAP-сервера и запрашивает страницы не больше указанного размера. Это позволяет не упираться в ограничение LDAP-сервера на максимальный размер результата. Иначе постраничный поиск не используется.
request_timeoutinteger (default: 90s)нетТайм-аут в секундах для запросов к серверу, по истечении которого возвращается ошибка.
starttlsbooleanнетВыполнять команду StartTLS после установки незашифрованного соединения (необязательно)
tls_max_versionstring (tls10, tls11, tls12, tls13) (default: tls12)нетМаксимальная версия TLS. Допустимые значения: ’tls10’, ’tls11’, ’tls12’ или ’tls13’. По умолчанию ’tls12’
tls_min_versionstring (tls10, tls11, tls12, tls13) (default: tls12)нетМинимальная версия TLS. Допустимые значения: ’tls10’, ’tls11’, ’tls12’ или ’tls13’. По умолчанию ’tls12’
token_bound_cidrsarrayнетСтрока значений через запятую или JSON-список CIDR-блоков. Если задан, определяет диапазоны IP-адресов, которым разрешено использовать сгенерированный токен.
token_explicit_max_ttlintegerнетЕсли задан, токены, созданные через эту роль, получают явный максимальный TTL. При продлении текущие значения максимального TTL роли и точки монтирования не проверяются, и их изменение не влияет на продлеваемый токен.
token_max_ttlintegerнетМаксимальное время жизни сгенерированного токена
token_no_default_policybooleanнетЕсли true, политика ‘default’ не будет автоматически добавляться к сгенерированным токенам
token_num_usesintegerнетМаксимальное количество использований токена; 0 означает без ограничений
token_periodintegerнетЕсли задан, токены, созданные через эту роль, не будут иметь максимального срока жизни; вместо этого их период продления фиксируется на этом значении. Принимает целое число секунд или строку длительности (например, “24h”).
token_policiesarrayнетСписок политик через запятую. Применяется ко всем токенам, сгенерированным этим методом аутентификации, в дополнение к политикам, настроенным для конкретных пользователей и групп.
token_ttlintegerнетНачальный TTL генерируемого токена
token_typestring (default: default-service)нетТип генерируемого токена: service или batch
upndomainstringнетРазрешает вход по userPrincipalName в формате [username]@UPNDomain (необязательно)
urlstring (default: ldap://127.0.0.1)нетURL LDAP-сервера для подключения (по умолчанию ldap://127.0.0.1). Можно указать несколько URL через запятую; они будут перебираться по порядку.
use_pre111_group_cn_behaviorbooleanнетВ Vault 1.1.1 исправление обработки значений CN групп в разном регистре, к сожалению, привело к регрессии: ранее определенные группы могли не находиться из-за изменения итогового имени. Если true, для сопоставления CN групп используется поведение до версии 1.1.1. Это требуется только в некоторых сценариях обновления для обратной совместимости. По умолчанию включено для обновленных конфигураций и отключено для новых.
use_token_groupsboolean (default: False)нетЕсли true, для поиска членства в группах используется вычисляемый атрибут пользователя tokenGroups в Active Directory. Так находятся все группы безопасности, включая вложенные.
userattrstring (default: cn)нетАтрибут, используемый для пользователей (по умолчанию: cn)
userdnstringнетДомен LDAP для пользователей (например, ou=People,dc=example,dc=org)
userfilterstring (default: ({{.UserAttr}}={{.Username}}))нетШаблон Go для фильтра поиска пользователей LDAP (необязательно). В шаблоне доступны переменные контекста: UserAttr, Username. По умолчанию: ({{.UserAttr}}={{.Username}})
username_as_aliasboolean (default: False)нетЕсли true, в качестве имени псевдонима используется имя пользователя

Ответы

200: OK

GET /auth/{kerberos_mount_path}/groups

ID операции: kerberos-list-groups

Управление пользователями, которым разрешена аутентификация.

Параметры

ПараметрТипРасположениеОбязательныйОписание
kerberos_mount_pathstringpathдаПуть, по которому смонтирован бэкенд
liststring (true)queryдаДолжно быть установлено значение true.

Ответы

200: OK

GET /auth/{kerberos_mount_path}/groups/{name}

ID операции: kerberos-read-group

Управление пользователями, которым разрешена аутентификация.

Параметры

ПараметрТипРасположениеОбязательныйОписание
namestringpathдаИмя группы LDAP.
kerberos_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

POST /auth/{kerberos_mount_path}/groups/{name}

ID операции: kerberos-write-group

Управление пользователями, которым разрешена аутентификация.

Параметры

ПараметрТипРасположениеОбязательныйОписание
namestringpathдаИмя группы LDAP.
kerberos_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
policiesarrayнетСписок политик группы через запятую.

Ответы

200: OK

DELETE /auth/{kerberos_mount_path}/groups/{name}

ID операции: kerberos-delete-group

Управление пользователями, которым разрешена аутентификация.

Параметры

ПараметрТипРасположениеОбязательныйОписание
namestringpathдаИмя группы LDAP.
kerberos_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: пустое тело

GET /auth/{kerberos_mount_path}/login

ID операции: kerberos-login2

Доступен без аутентификации: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
kerberos_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

POST /auth/{kerberos_mount_path}/login

ID операции: kerberos-login

Доступен без аутентификации: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
kerberos_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
authorizationstringнетЗаголовок авторизации SPNEGO. Обязателен.

Ответы

200: OK

GET /auth/{kubernetes_mount_path}/config

ID операции: kubernetes-read-auth-configuration

Настраивает открытый ключ JWT и параметры API Kubernetes.

Параметры

ПараметрТипРасположениеОбязательныйОписание
kubernetes_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

POST /auth/{kubernetes_mount_path}/config

ID операции: kubernetes-configure-auth

Настраивает открытый ключ JWT и параметры API Kubernetes.

Параметры

ПараметрТипРасположениеОбязательныйОписание
kubernetes_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
disable_iss_validationboolean (default: True)нет⚠️ Устарело. Отключить проверку издателя JWT (устарело, будет удалено в будущих версиях)
disable_local_ca_jwtboolean (default: False)нетНе использовать по умолчанию локальный CA-сертификат и JWT сервисного аккаунта при запуске в поде Kubernetes
issuerstringнет⚠️ Устарело. Необязательный издатель JWT. Если не указан, плагин использует kubernetes.io/serviceaccount в качестве издателя по умолчанию. (Устарело, будет удалено в будущих версиях)
kubernetes_ca_certstringнетНеобязательный CA-сертификат в формате PEM для TLS-клиента, взаимодействующего с API. Если не задан и disable_local_ca_jwt равен true, используется системный пул доверенных CA-сертификатов.
kubernetes_hoststringнетСтрока хоста, пара host:port или базовый URL API-сервера Kubernetes.
pem_keysarrayнетНеобязательный список открытых ключей или сертификатов в формате PEM для проверки подписей JWT сервисных аккаунтов Kubernetes. Если указан сертификат, из него извлекается открытый ключ. Не все инсталляции Kubernetes предоставляют эти ключи.
token_reviewer_jwtstringнетJWT сервисного аккаунта (или другой токен), используемый как bearer-токен для доступа к TokenReview API при проверке других JWT во время входа. Если не задан, для доступа к API используется JWT, переданный при входе.
use_annotations_as_alias_metadataboolean (default: False)нетИспользовать аннотации сервисного аккаунта, связанного с клиентским токеном, в качестве метаданных псевдонима сущности Stronghold. Используются только аннотации с префиксом “vault.hashicorp.com/alias-metadata-”. Обратите внимание: Stronghold потребуется право на чтение сервисных аккаунтов через API Kubernetes.

Ответы

200: OK

POST /auth/{kubernetes_mount_path}/login

ID операции: kubernetes-login

Аутентифицирует сервисные аккаунты Kubernetes в Stronghold.

Доступен без аутентификации: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
kubernetes_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
jwtstringнетПодписанный JWT для аутентификации сервисного аккаунта. Обязательное поле.
rolestringнетИмя роли, с которой выполняется попытка входа. Обязательное поле

Ответы

200: OK

GET /auth/{kubernetes_mount_path}/role

ID операции: kubernetes-list-auth-roles

Возвращает список всех ролей, зарегистрированных в бэкенде.

Параметры

ПараметрТипРасположениеОбязательныйОписание
kubernetes_mount_pathstringpathдаПуть, по которому смонтирован бэкенд
liststring (true)queryдаДолжно быть установлено значение true.

Ответы

200: OK

GET /auth/{kubernetes_mount_path}/role/{name}

ID операции: kubernetes-read-auth-role

Регистрирует роль в бэкенде.

Параметры

ПараметрТипРасположениеОбязательныйОписание
namestringpathдаИмя роли.
kubernetes_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

POST /auth/{kubernetes_mount_path}/role/{name}

ID операции: kubernetes-write-auth-role

Регистрирует роль в бэкенде.

Поддерживается создание: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
namestringpathдаИмя роли.
kubernetes_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
alias_name_sourcestring (default: serviceaccount_uid)нетИсточник для формирования имени псевдонима. Допустимые значения: “serviceaccount_uid” : <token.uid>, например 474b11b5-0f20-4f9d-8ca5-65715ab325e0 (самый безопасный вариант); “serviceaccount_name” : /, например stronghold/stronghold-agent. По умолчанию: “serviceaccount_uid”
audiencestringнетНеобязательное утверждение audience для проверки в JWT.
bound_cidrsarrayнет⚠️ Устарело. Используйте вместо этого “token_bound_cidrs”. Если указаны оба параметра, используется только “token_bound_cidrs”.
bound_service_account_namesarrayнетСписок имен сервисных аккаунтов, которым разрешен доступ к этой роли. Значение “*” разрешает все имена.
bound_service_account_namespace_selectorstringнетСелектор меток для пространств имен Kubernetes, которым разрешен доступ к этой роли. Принимает объект JSON или YAML. Если задан вместе с bound_service_account_namespaces, условия объединяются через ИЛИ.
bound_service_account_namespacesarrayнетСписок пространств имен, которым разрешен доступ к этой роли. Значение “*” разрешает все пространства имен.
max_ttlintegerнет⚠️ Устарело. Используйте вместо этого “token_max_ttl”. Если указаны оба параметра, используется только “token_max_ttl”.
num_usesintegerнет⚠️ Устарело. Используйте вместо этого “token_num_uses”. Если указаны оба параметра, используется только “token_num_uses”.
periodintegerнет⚠️ Устарело. Используйте вместо этого “token_period”. Если указаны оба параметра, используется только “token_period”.
policiesarrayнет⚠️ Устарело. Используйте вместо этого “token_policies”. Если указаны оба параметра, используется только “token_policies”.
token_bound_cidrsarrayнетСтрока значений через запятую или JSON-список CIDR-блоков. Если задан, определяет диапазоны IP-адресов, которым разрешено использовать сгенерированный токен.
token_explicit_max_ttlintegerнетЕсли задан, токены, созданные через эту роль, получают явный максимальный TTL. При продлении текущие значения максимального TTL роли и точки монтирования не проверяются, и их изменение не влияет на продлеваемый токен.
token_max_ttlintegerнетМаксимальное время жизни сгенерированного токена
token_no_default_policybooleanнетЕсли true, политика ‘default’ не будет автоматически добавляться к сгенерированным токенам
token_num_usesintegerнетМаксимальное количество использований токена; 0 означает без ограничений
token_periodintegerнетЕсли задан, токены, созданные через эту роль, не будут иметь максимального срока жизни; вместо этого их период продления фиксируется на этом значении. Принимает целое число секунд или строку длительности (например, “24h”).
token_policiesarrayнетСписок политик через запятую
token_ttlintegerнетНачальный TTL генерируемого токена
token_typestring (default: default-service)нетТип генерируемого токена: service или batch
ttlintegerнет⚠️ Устарело. Используйте вместо этого “token_ttl”. Если указаны оба параметра, используется только “token_ttl”.

Ответы

200: OK

DELETE /auth/{kubernetes_mount_path}/role/{name}

ID операции: kubernetes-delete-auth-role

Регистрирует роль в бэкенде.

Параметры

ПараметрТипРасположениеОбязательныйОписание
namestringpathдаИмя роли.
kubernetes_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: пустое тело

GET /auth/{ldap_mount_path}/config

ID операции: ldap-read-auth-configuration

Настроить подключение к LDAP-серверу и его параметры.

Параметры

ПараметрТипРасположениеОбязательныйОписание
ldap_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

POST /auth/{ldap_mount_path}/config

ID операции: ldap-configure-auth

Настроить подключение к LDAP-серверу и его параметры.

Параметры

ПараметрТипРасположениеОбязательныйОписание
ldap_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
anonymous_group_searchboolean (default: False)нетИспользовать анонимную привязку (bind) при поиске групп LDAP (если true, исходные учетные данные все равно используются для первичной проверки подключения).
binddnstringнетLDAP DN для поиска DN пользователя (необязательно)
bindpassstringнетПароль LDAP для поиска DN пользователя (необязательно)
case_sensitive_namesbooleanнетЕсли true, при сопоставлении имен пользователей и групп с политиками учитывается регистр.
certificatestringнетCA-сертификат для проверки сертификата LDAP-сервера в формате x509 PEM (необязательно)
client_tls_certstringнетКлиентский сертификат, предъявляемый LDAP-серверу, в формате x509 PEM (необязательно)
client_tls_keystringнетКлюч клиентского сертификата, предъявляемого LDAP-серверу, в формате x509 PEM (необязательно)
connection_timeoutinteger (default: 30s)нетТайм-аут в секундах на подключение к LDAP-серверу, после которого выполняется попытка подключиться по следующему URL из конфигурации.
deny_null_bindboolean (default: True)нет⚠️ Устарело. Отклонять неаутентифицированный запрос привязки (bind) к LDAP, если пароль пользователя пуст; по умолчанию true
dereference_aliasesstring (never, finding, searching, always) (default: never)нетКогда разыменовывать псевдонимы (aliases) при поиске. Допустимые значения: ’never’, ‘finding’, ‘searching’, ‘always’. По умолчанию ’never’.
discoverdnbooleanнетИспользовать анонимную привязку (bind) для определения bind DN пользователя (необязательно)
enable_samaccountname_loginboolean (default: False)нетЕсли true и задан upndomain, вход также разрешается по совпадающим значениям атрибута sAMAccountName.
groupattrstring (default: cn)нетАтрибут LDAP объектов, возвращаемых , по которому определяется членство пользователя в группах. Примеры: “cn”, “memberOf” и т. д. По умолчанию: cn
groupdnstringнетБаза поиска LDAP для поиска членства в группах (например, ou=Groups,dc=example,dc=org)
groupfilterstring (default: (|(memberUid={{.Username}})(member={{.UserDN}})(uniqueMember={{.UserDN}})))нетШаблон Go для запроса членства пользователя в группах (необязательно). В шаблоне доступны переменные контекста: UserDN, Username. Пример: (&(objectClass=group)(member:1.2.840.113556.1.4.1941:={{.UserDN}})). По умолчанию: (|(memberUid={{.Username}})(member={{.UserDN}})(uniqueMember={{.UserDN}}))
insecure_tlsbooleanнетПропустить проверку SSL-сертификата LDAP-сервера — ОЧЕНЬ небезопасно (необязательно)
max_page_sizeinteger (default: 0)нетЕсли задано значение больше 0, бэкенд LDAP использует постраничный поиск (paged search control) LDAP-сервера и запрашивает страницы не больше указанного размера. Это позволяет не упираться в ограничение LDAP-сервера на максимальный размер результата. Иначе постраничный поиск не используется.
request_timeoutinteger (default: 90s)нетТайм-аут в секундах для запросов к серверу, по истечении которого возвращается ошибка.
starttlsbooleanнетВыполнять команду StartTLS после установки незашифрованного соединения (необязательно)
tls_max_versionstring (tls10, tls11, tls12, tls13) (default: tls12)нетМаксимальная версия TLS. Допустимые значения: ’tls10’, ’tls11’, ’tls12’ или ’tls13’. По умолчанию ’tls12’
tls_min_versionstring (tls10, tls11, tls12, tls13) (default: tls12)нетМинимальная версия TLS. Допустимые значения: ’tls10’, ’tls11’, ’tls12’ или ’tls13’. По умолчанию ’tls12’
token_bound_cidrsarrayнетСтрока значений через запятую или JSON-список CIDR-блоков. Если задан, определяет диапазоны IP-адресов, которым разрешено использовать сгенерированный токен.
token_explicit_max_ttlintegerнетЕсли задан, токены, созданные через эту роль, получают явный максимальный TTL. При продлении текущие значения максимального TTL роли и точки монтирования не проверяются, и их изменение не влияет на продлеваемый токен.
token_max_ttlintegerнетМаксимальное время жизни сгенерированного токена
token_no_default_policybooleanнетЕсли true, политика ‘default’ не будет автоматически добавляться к сгенерированным токенам
token_num_usesintegerнетМаксимальное количество использований токена; 0 означает без ограничений
token_periodintegerнетЕсли задан, токены, созданные через эту роль, не будут иметь максимального срока жизни; вместо этого их период продления фиксируется на этом значении. Принимает целое число секунд или строку длительности (например, “24h”).
token_policiesarrayнетСписок политик через запятую. Применяется ко всем токенам, сгенерированным этим методом аутентификации, в дополнение к политикам, настроенным для конкретных пользователей и групп.
token_ttlintegerнетНачальный TTL генерируемого токена
token_typestring (default: default-service)нетТип генерируемого токена: service или batch
upndomainstringнетРазрешает вход по userPrincipalName в формате [username]@UPNDomain (необязательно)
urlstring (default: ldap://127.0.0.1)нетURL LDAP-сервера для подключения (по умолчанию ldap://127.0.0.1). Можно указать несколько URL через запятую; они будут перебираться по порядку.
use_pre111_group_cn_behaviorbooleanнетВ Vault 1.1.1 исправление обработки значений CN групп в разном регистре, к сожалению, привело к регрессии: ранее определенные группы могли не находиться из-за изменения итогового имени. Если true, для сопоставления CN групп используется поведение до версии 1.1.1. Это требуется только в некоторых сценариях обновления для обратной совместимости. По умолчанию включено для обновленных конфигураций и отключено для новых.
use_token_groupsboolean (default: False)нетЕсли true, для поиска членства в группах используется вычисляемый атрибут пользователя tokenGroups в Active Directory. Так находятся все группы безопасности, включая вложенные.
userattrstring (default: cn)нетАтрибут, используемый для пользователей (по умолчанию: cn)
userdnstringнетДомен LDAP для пользователей (например, ou=People,dc=example,dc=org)
userfilterstring (default: ({{.UserAttr}}={{.Username}}))нетШаблон Go для фильтра поиска пользователей LDAP (необязательно). В шаблоне доступны переменные контекста: UserAttr, Username. По умолчанию: ({{.UserAttr}}={{.Username}})
username_as_aliasboolean (default: False)нетЕсли true, в качестве имени псевдонима используется имя пользователя

Ответы

200: OK

GET /auth/{ldap_mount_path}/groups

ID операции: ldap-list-groups

Управление дополнительными группами для пользователей, которым разрешена аутентификация.

Параметры

ПараметрТипРасположениеОбязательныйОписание
ldap_mount_pathstringpathдаПуть, по которому смонтирован бэкенд
liststring (true)queryдаДолжно быть установлено значение true.

Ответы

200: OK

GET /auth/{ldap_mount_path}/groups/{name}

ID операции: ldap-read-group

Управление дополнительными группами для пользователей, которым разрешена аутентификация.

Параметры

ПараметрТипРасположениеОбязательныйОписание
namestringpathдаИмя группы LDAP.
ldap_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

POST /auth/{ldap_mount_path}/groups/{name}

ID операции: ldap-write-group

Управление дополнительными группами для пользователей, которым разрешена аутентификация.

Параметры

ПараметрТипРасположениеОбязательныйОписание
namestringpathдаИмя группы LDAP.
ldap_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
policiesarrayнетСписок политик группы через запятую.

Ответы

200: OK

DELETE /auth/{ldap_mount_path}/groups/{name}

ID операции: ldap-delete-group

Управление дополнительными группами для пользователей, которым разрешена аутентификация.

Параметры

ПараметрТипРасположениеОбязательныйОписание
namestringpathдаИмя группы LDAP.
ldap_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: пустое тело

POST /auth/{ldap_mount_path}/login/{username}

ID операции: ldap-login

Вход по имени пользователя и паролю.

Доступен без аутентификации: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
usernamestringpathдаDN (отличительное имя), используемое для входа.
ldap_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
passwordstringнетПароль пользователя.

Ответы

200: OK

GET /auth/{ldap_mount_path}/users

ID операции: ldap-list-users

Управление пользователями, которым разрешена аутентификация.

Параметры

ПараметрТипРасположениеОбязательныйОписание
ldap_mount_pathstringpathдаПуть, по которому смонтирован бэкенд
liststring (true)queryдаДолжно быть установлено значение true.

Ответы

200: OK

GET /auth/{ldap_mount_path}/users/{name}

ID операции: ldap-read-user

Управление пользователями, которым разрешена аутентификация.

Параметры

ПараметрТипРасположениеОбязательныйОписание
namestringpathдаИмя пользователя LDAP.
ldap_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

POST /auth/{ldap_mount_path}/users/{name}

ID операции: ldap-write-user

Управление пользователями, которым разрешена аутентификация.

Параметры

ПараметрТипРасположениеОбязательныйОписание
namestringpathдаИмя пользователя LDAP.
ldap_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
groupsarrayнетСписок дополнительных групп пользователя через запятую.
policiesarrayнетСписок политик пользователя через запятую.

Ответы

200: OK

DELETE /auth/{ldap_mount_path}/users/{name}

ID операции: ldap-delete-user

Управление пользователями, которым разрешена аутентификация.

Параметры

ПараметрТипРасположениеОбязательныйОписание
namestringpathдаИмя пользователя LDAP.
ldap_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: пустое тело

POST /auth/{saml_mount_path}/callback

ID операции: saml-write-callback

Предоставляет Assertion Consumer Service для обработки привязки к провайдеру удостоверений (IdP).

Доступен без аутентификации: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
saml_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
RelayStatestringдаSAML RelayState, прошедший полный цикл через IdP.
SAMLResponsestringдаSAML-ответ от провайдера удостоверений (IdP).

Ответы

200: OK

GET /auth/{saml_mount_path}/config

ID операции: saml-read-config

Прочитать конфигурацию метода аутентификации.

Параметры

ПараметрТипРасположениеОбязательныйОписание
saml_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

POST /auth/{saml_mount_path}/config

ID операции: saml-write-config

Обновить конфигурацию метода аутентификации.

Поддерживается создание: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
saml_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
acs_urlsarrayдаURL Assertion Consumer Service, на которые IdP будет отправлять ответы. Должны быть корректно оформленными URL. Если какой-либо URL не защищен TLS, будет выдано предупреждение.
default_rolestringнетРоль по умолчанию, если при входе роль не указана. Если не задана, при входе роль обязательна.
entity_idstringдаEntity ID этого метода аутентификации в роли SAML Service Provider.
idp_certstringнетСертификат IdP в PEM, используемый для проверки подписей response и assertion. Взаимоисключающий с idp_metadata_url.
idp_entity_idstringнетEntity ID IdP. Взаимоисключающий с idp_metadata_url.
idp_metadata_urlstringнетURL метаданных IdP. Взаимоисключающий с idp_sso_url, idp_issuer и idp_cert. Должен быть корректно оформленным URL.
idp_sso_urlstringнетURL SSO IdP. Взаимоисключающий с idp_metadata_url. Должен быть корректно оформленным URL.
validate_assertion_signaturebooleanнетВключает проверку подписи как минимум для assertion в SAML-ответе. Если IdP подписывает и response, и assertion, рекомендуется включить проверку подписей обоих, активировав соответствующие отдельные параметры.
validate_response_signaturebooleanнетВключает проверку подписи как минимум для response в SAML-ответе. Если IdP подписывает и response, и assertion, рекомендуется включить проверку подписей обоих, активировав соответствующие отдельные параметры.
verbose_loggingbooleanнетДополнительное логирование при обмене SAML. Данные пользователя пишутся при уровне логирования debug, полный SAML-ответ — при уровне trace.

Ответы

200: OK

GET /auth/{saml_mount_path}/role

ID операции: saml-list-role

Получить список всех ролей.

Параметры

ПараметрТипРасположениеОбязательныйОписание
saml_mount_pathstringpathдаПуть, по которому смонтирован бэкенд
liststring (true)queryдаДолжно быть установлено значение true.

Ответы

200: OK

GET /auth/{saml_mount_path}/role/{name}

ID операции: saml-read-role-name

Прочитать конфигурацию роли.

Параметры

ПараметрТипРасположениеОбязательныйОписание
namestringpathдаИмя роли.
saml_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

POST /auth/{saml_mount_path}/role/{name}

ID операции: saml-write-role-name

Обновить конфигурацию роли.

Параметры

ПараметрТипРасположениеОбязательныйОписание
namestringpathдаИмя роли.
saml_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
alias_metadataobjectнетМетаданные, привязываемые к создаваемому псевдониму сущности. Задаются списком или картой пар «ключ — значение».
bound_attributesobjectнетСопоставление имен атрибутов со значениями, наличие которых должно быть проверено в Assertion SAML Response.
bound_attributes_typestring (string, glob)нетТип сопоставления для пар ключ–значение в bound_attributes: при string — точное совпадение строк в значениях; при glob — подстановочные символы * в значениях.
bound_subjectsarrayнетSubject, который должен присутствовать в SAML Response. Subject в SAML Response должен совпадать с одним из настроенных значений.
bound_subjects_typestring (string, glob)нетТип сопоставления для bound_subject: при string — точное совпадение строки; при glob — подстановочные символы *.
groups_attributestringнетАтрибут, из которого берутся имена псевдонимов групп Stronghold Identity.
token_bound_cidrsarrayнетСтрока значений через запятую или JSON-список CIDR-блоков. Если задан, определяет диапазоны IP-адресов, которым разрешено использовать сгенерированный токен.
token_explicit_max_ttlintegerнетЕсли задан, токены, созданные через эту роль, получают явный максимальный TTL. При продлении текущие значения максимального TTL роли и точки монтирования не проверяются, и их изменение не влияет на продлеваемый токен.
token_max_ttlintegerнетМаксимальное время жизни сгенерированного токена
token_no_default_policybooleanнетЕсли true, политика ‘default’ не будет автоматически добавляться к сгенерированным токенам
token_num_usesintegerнетМаксимальное количество использований токена; 0 означает без ограничений
token_periodintegerнетЕсли задан, токены, созданные через эту роль, не будут иметь максимального срока жизни; вместо этого их период продления фиксируется на этом значении. Принимает целое число секунд или строку длительности (например, “24h”).
token_policiesarrayнетСписок политик через запятую
token_ttlintegerнетНачальный TTL генерируемого токена
token_typestring (default: default-service)нетТип генерируемого токена: service или batch

Ответы

200: OK

DELETE /auth/{saml_mount_path}/role/{name}

ID операции: saml-delete-role-name

Удалить роль.

Параметры

ПараметрТипРасположениеОбязательныйОписание
namestringpathдаИмя роли.
saml_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: пустое тело

POST /auth/{saml_mount_path}/sso_service_url

ID операции: saml-write-sso_service_url

Получить URL службы SSO для начала SAML-аутентификации.

Доступен без аутентификации: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
saml_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
acs_urlstringнетURL Assertion Consumer Service для этого запроса аутентификации. Должен входить в список разрешенных URL в конфигурации.
client_challengestringдаКлиентский challenge: должен быть результатом base64-кодирования SHA256-хэша client_verifier, который затем передается в token API.
client_typestring (default: cli)нетТип клиента, инициирующего запрос. Ответ callback API Assertion Consumer Service зависит от указанного типа.
rolestringнетРоль, для которой выдается URL службы SSO.

Ответы

200: OK

POST /auth/{saml_mount_path}/token

ID операции: saml-write-token

Получить токен Stronghold для завершения потока аутентификации.

Доступен без аутентификации: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
saml_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
client_verifierstringдаЗначение, из которого сформирован client_challenge, переданный в API URL службы SSO в начале потока. Его SHA256-хэш в base64 должен совпадать с client_challenge.
token_poll_idstringдаЗначение token_poll_id, возвращенное API URL службы SSO в начале потока аутентификации.

Ответы

200: OK

POST /auth/{userpass_mount_path}/login/{username}

ID операции: userpass-login

Вход по имени пользователя и паролю.

Доступен без аутентификации: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
usernamestringpathдаИмя пользователя.
userpass_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
passwordstringнетПароль пользователя.

Ответы

200: OK

POST /auth/{userpass_mount_path}/login/{username}/change-password

ID операции: userpass-change-password

Изменить собственный пароль, указав текущий.

Доступен без аутентификации: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
usernamestringpathдаИмя пользователя.
userpass_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
current_passwordstringнетТекущий пароль пользователя.
new_passwordstringнетНовый пароль пользователя.

Ответы

204: OK

GET /auth/{userpass_mount_path}/password-expiry

ID операции: userpass-read-password-expiry

Прочитать действующие настройки срока действия паролей для этой точки монтирования userpass.

Параметры

ПараметрТипРасположениеОбязательныйОписание
userpass_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

ПараметрТипОбязательныйОписание
epochstringнетТочка отсчета для паролей с неизвестным временем установки; пусто, если не записана.
max_age_daysintegerнетКоличество дней действия пароля; 0 означает, что срок действия не ограничен.
warning_daysintegerнетЗа сколько дней до истечения срока действия пароля при входе начинает выводиться предупреждение пользователю.

GET /auth/{userpass_mount_path}/password-policy/{policy_name}

ID операции: userpass-read-policies-password

Установить, прочитать или удалить политику паролей, применяемую для userpass.

Параметры

ПараметрТипРасположениеОбязательныйОписание
policy_namestringpathдаИмя политики паролей, применяемой для userpass.
userpass_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

ПараметрТипОбязательныйОписание
policy_namestringнетИмя политики паролей, применяемой для userpass.

POST /auth/{userpass_mount_path}/password-policy/{policy_name}

ID операции: userpass-write-policies-password

Установить, прочитать или удалить политику паролей, применяемую для userpass.

Поддерживается создание: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
policy_namestringpathдаИмя политики паролей, применяемой для userpass.
userpass_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: OK

DELETE /auth/{userpass_mount_path}/password-policy/{policy_name}

ID операции: userpass-delete-policies-password

Установить, прочитать или удалить политику паролей, применяемую для userpass.

Параметры

ПараметрТипРасположениеОбязательныйОписание
policy_namestringpathдаИмя политики паролей, применяемой для userpass.
userpass_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: OK

GET /auth/{userpass_mount_path}/password_policy/{policy_name}

ID операции: userpass-read-policies-password-deprecated

Установить, прочитать или удалить политику паролей, применяемую для userpass.

Параметры

ПараметрТипРасположениеОбязательныйОписание
policy_namestringpathдаИмя политики паролей, применяемой для userpass.
userpass_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

ПараметрТипОбязательныйОписание
policy_namestringнетИмя политики паролей, применяемой для userpass.

POST /auth/{userpass_mount_path}/password_policy/{policy_name}

ID операции: userpass-write-policies-password-deprecated

Установить, прочитать или удалить политику паролей, применяемую для userpass.

Поддерживается создание: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
policy_namestringpathдаИмя политики паролей, применяемой для userpass.
userpass_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: OK

DELETE /auth/{userpass_mount_path}/password_policy/{policy_name}

ID операции: userpass-delete-policies-password-deprecated

Установить, прочитать или удалить политику паролей, применяемую для userpass.

Параметры

ПараметрТипРасположениеОбязательныйОписание
policy_namestringpathдаИмя политики паролей, применяемой для userpass.
userpass_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: OK

GET /auth/{userpass_mount_path}/users

ID операции: userpass-list-users

Управление пользователями, которым разрешена аутентификация.

Параметры

ПараметрТипРасположениеОбязательныйОписание
userpass_mount_pathstringpathдаПуть, по которому смонтирован бэкенд
liststring (true)queryдаДолжно быть установлено значение true.

Ответы

200: OK

GET /auth/{userpass_mount_path}/users/{username}

ID операции: userpass-read-user

Управление пользователями, которым разрешена аутентификация.

Параметры

ПараметрТипРасположениеОбязательныйОписание
usernamestringpathдаИмя пользователя.
userpass_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

POST /auth/{userpass_mount_path}/users/{username}

ID операции: userpass-write-user

Управление пользователями, которым разрешена аутентификация.

Поддерживается создание: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
usernamestringpathдаИмя пользователя.
userpass_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
bound_cidrsarrayнет⚠️ Устарело. Используйте вместо этого “token_bound_cidrs”. Если указаны оба параметра, используется только “token_bound_cidrs”.
max_ttlintegerнет⚠️ Устарело. Используйте вместо этого “token_max_ttl”. Если указаны оба параметра, используется только “token_max_ttl”.
passwordstringнетПароль пользователя.
policiesarrayнет⚠️ Устарело. Используйте вместо этого “token_policies”. Если указаны оба параметра, используется только “token_policies”.
token_bound_cidrsarrayнетСтрока значений через запятую или JSON-список CIDR-блоков. Если задан, определяет диапазоны IP-адресов, которым разрешено использовать сгенерированный токен.
token_explicit_max_ttlintegerнетЕсли задан, токены, созданные через эту роль, получают явный максимальный TTL. При продлении текущие значения максимального TTL роли и точки монтирования не проверяются, и их изменение не влияет на продлеваемый токен.
token_max_ttlintegerнетМаксимальное время жизни сгенерированного токена
token_no_default_policybooleanнетЕсли true, политика ‘default’ не будет автоматически добавляться к сгенерированным токенам
token_num_usesintegerнетМаксимальное количество использований токена; 0 означает без ограничений
token_periodintegerнетЕсли задан, токены, созданные через эту роль, не будут иметь максимального срока жизни; вместо этого их период продления фиксируется на этом значении. Принимает целое число секунд или строку длительности (например, “24h”).
token_policiesarrayнетСписок политик через запятую
token_ttlintegerнетНачальный TTL генерируемого токена
token_typestring (default: default-service)нетТип генерируемого токена: service или batch
ttlintegerнет⚠️ Устарело. Используйте вместо этого “token_ttl”. Если указаны оба параметра, используется только “token_ttl”.

Ответы

200: OK

DELETE /auth/{userpass_mount_path}/users/{username}

ID операции: userpass-delete-user

Управление пользователями, которым разрешена аутентификация.

Параметры

ПараметрТипРасположениеОбязательныйОписание
usernamestringpathдаИмя пользователя.
userpass_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: пустое тело

POST /auth/{userpass_mount_path}/users/{username}/password

ID операции: userpass-reset-password

Сбросить пароль пользователя.

Параметры

ПараметрТипРасположениеОбязательныйОписание
usernamestringpathдаИмя пользователя.
userpass_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
passwordstringнетПароль пользователя.

Ответы

200: OK

POST /auth/{userpass_mount_path}/users/{username}/policies

ID операции: userpass-update-policies

Обновить политики, связанные с именем пользователя.

Параметры

ПараметрТипРасположениеОбязательныйОписание
usernamestringpathдаИмя пользователя.
userpass_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
policiesarrayнет⚠️ Устарело. Используйте вместо этого “token_policies”. Если указаны оба параметра, используется только “token_policies”.
token_policiesarrayнетСписок политик через запятую

Ответы

200: OK

GET /auth/{webauthn_mount_path}/config

ID операции: webauthn-read-configuration

Прочитать конфигурацию WebAuthn

Параметры

ПараметрТипРасположениеОбязательныйОписание
webauthn_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

ПараметрТипОбязательныйОписание
auto_registrationbooleanнетМогут ли новые пользователи регистрироваться самостоятельно.
rp_display_namestringнетПонятное человеку имя Relying Party.
rp_idstringнетИдентификатор Relying Party.
rp_originsarrayнетРазрешенные источники для WebAuthn.

POST /auth/{webauthn_mount_path}/config

ID операции: webauthn-write-configuration

Настроить бэкенд WebAuthn

Параметры

ПараметрТипРасположениеОбязательныйОписание
webauthn_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
auto_registrationboolean (default: False)нетЕсли true, новые пользователи могут регистрироваться самостоятельно. Если false (по умолчанию), регистрироваться могут только предварительно созданные пользователи.
rp_display_namestringнетПонятное человеку имя Relying Party.
rp_idstringнетИдентификатор Relying Party (например, localhost или ваш домен). Должен совпадать с хостом источника (origin).
rp_originsarrayнетРазрешенные источники (origins) для WebAuthn (например, https://stronghold.example.com, http://localhost:8200).

Ответы

204: No Content

POST /auth/{webauthn_mount_path}/login/begin

ID операции: webauthn-begin-login

Начать вход WebAuthn

Доступен без аутентификации: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
webauthn_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
usernamestringнетИмя пользователя для аутентификации (не указывайте для discoverable/passkey-потока: браузер покажет окно выбора passkey)

Ответы

200: OK

ПараметрТипОбязательныйОписание
mediationstringнетНеобязательное требование mediation для учетных данных
publicKeyobjectнетPublicKeyCredentialRequestOptions для navigator.credentials.get()

POST /auth/{webauthn_mount_path}/login/finish

ID операции: webauthn-finish-login

Завершить вход WebAuthn

Доступен без аутентификации: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
webauthn_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
credentialobjectнетОтвет аутентификатора с подтверждением (assertion): объект PublicKeyCredential с полем response

Ответы

200: OK

POST /auth/{webauthn_mount_path}/register/begin

ID операции: webauthn-begin-registration

Начать регистрацию WebAuthn

Доступен без аутентификации: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
webauthn_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
registration_codestringнетОдноразовый код регистрации, возвращенный при создании пользователя
usernamestringнетИмя пользователя для регистрации WebAuthn

Ответы

200: OK

ПараметрТипОбязательныйОписание
mediationstringнетНеобязательное требование mediation для учетных данных
publicKeyobjectнетPublicKeyCredentialCreationOptions для navigator.credentials.create()

POST /auth/{webauthn_mount_path}/register/finish

ID операции: webauthn-finish-registration

Завершить регистрацию WebAuthn

Доступен без аутентификации: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
webauthn_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
credentialobjectнетОтвет аутентификатора на создание учетных данных: объект PublicKeyCredential с полем response

Ответы

200: OK

ПараметрТипОбязательныйОписание
messagestringнетСообщение о статусе регистрации
usernamestringнетЗарегистрированное имя пользователя

GET /auth/{webauthn_mount_path}/user

ID операции: webauthn-list-users

Получить список зарегистрированных пользователей

Параметры

ПараметрТипРасположениеОбязательныйОписание
webauthn_mount_pathstringpathдаПуть, по которому смонтирован бэкенд
liststring (true)queryдаДолжно быть установлено значение true.

Ответы

200: OK

GET /auth/{webauthn_mount_path}/user/{name}

ID операции: webauthn-read-user

Прочитать данные зарегистрированного пользователя

Параметры

ПараметрТипРасположениеОбязательныйОписание
namestringpathдаИмя пользователя
webauthn_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

ПараметрТипОбязательныйОписание
credential_idsarrayнетИдентификаторы учетных данных в кодировке base64url
credentialsintegerнетКоличество зарегистрированных учетных данных WebAuthn
display_namestringнетОтображаемое имя пользователя
token_bound_cidrsarrayнетСтрока значений через запятую или JSON-список CIDR-блоков. Если задан, определяет диапазоны IP-адресов, которым разрешено использовать сгенерированный токен.
token_explicit_max_ttlintegerнетЕсли задан, токены, созданные через эту роль, получают явный максимальный TTL. При продлении текущие значения максимального TTL роли и точки монтирования не проверяются, и их изменение не влияет на продлеваемый токен.
token_max_ttlintegerнетМаксимальное время жизни сгенерированного токена
token_no_default_policybooleanнетЕсли true, политика ‘default’ не будет автоматически добавляться к сгенерированным токенам
token_num_usesintegerнетМаксимальное количество использований токена; 0 означает без ограничений
token_periodintegerнетЕсли задан, токены, созданные через эту роль, не будут иметь максимального срока жизни; вместо этого их период продления фиксируется на этом значении. Принимает целое число секунд или строку длительности (например, “24h”).
token_policiesarrayнетСписок политик через запятую
token_ttlintegerнетНачальный TTL генерируемого токена
token_typestring (default: default-service)нетТип генерируемого токена: service или batch
user_id_b64stringнетИдентификатор пользователя WebAuthn в кодировке base64url
usernamestringнетИмя пользователя

POST /auth/{webauthn_mount_path}/user/{name}

ID операции: webauthn-write-user

Обновить пользователя

Поддерживается создание: да

Параметры

ПараметрТипРасположениеОбязательныйОписание
namestringpathдаИмя пользователя
webauthn_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
display_namestringнетОтображаемое имя пользователя (по умолчанию совпадает с username)
token_bound_cidrsarrayнетСтрока значений через запятую или JSON-список CIDR-блоков. Если задан, определяет диапазоны IP-адресов, которым разрешено использовать сгенерированный токен.
token_max_ttlintegerнетМаксимальное время жизни сгенерированного токена
token_no_default_policybooleanнетЕсли true, политика ‘default’ не будет автоматически добавляться к сгенерированным токенам
token_periodintegerнетЕсли задан, токены, созданные через эту роль, не будут иметь максимального срока жизни; вместо этого их период продления фиксируется на этом значении. Принимает целое число секунд или строку длительности (например, “24h”).
token_policiesarrayнетСписок политик через запятую
token_ttlintegerнетНачальный TTL генерируемого токена

Ответы

200: OK

ПараметрТипОбязательныйОписание
display_namestringнетОтображаемое имя пользователя
registration_codestringнетОдноразовый код регистрации (возвращается только при создании)
usernamestringнетИмя пользователя

DELETE /auth/{webauthn_mount_path}/user/{name}

ID операции: webauthn-delete-user

Удалить зарегистрированного пользователя

Параметры

ПараметрТипРасположениеОбязательныйОписание
namestringpathдаИмя пользователя
webauthn_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: No Content

DELETE /auth/{webauthn_mount_path}/user/{name}/credential/{credential_id}

ID операции: webauthn-delete-credential

Удалить учетные данные пользователя

Параметры

ПараметрТипРасположениеОбязательныйОписание
credential_idstringpathдаИдентификатор учетных данных (в кодировке base64url)
namestringpathдаИмя пользователя
webauthn_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

204: No Content

POST /auth/{webauthn_mount_path}/user/{name}/generate-code

ID операции: webauthn-generate-registration-code

Сгенерировать новый одноразовый код регистрации для пользователя

Параметры

ПараметрТипРасположениеОбязательныйОписание
namestringpathдаИмя пользователя
webauthn_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Ответы

200: OK

ПараметрТипОбязательныйОписание
registration_codestringнетОдноразовый код регистрации
usernamestringнетИмя пользователя

POST /auth/{webauthn_mount_path}/user/{name}/policies

ID операции: webauthn-update-policies

Обновить политики токена пользователя

Параметры

ПараметрТипРасположениеОбязательныйОписание
namestringpathдаИмя пользователя
webauthn_mount_pathstringpathдаПуть, по которому смонтирован бэкенд

Параметры тела запроса

ПараметрТипОбязательныйОписание
token_policiesarrayнетСписок политик для генерируемого токена через запятую

Ответы

204: No Content