Механизм секретов TOTP
Механизм секретов TOTP генерирует учетные данные, основанные на времени, в соответствии со стандартом TOTP. Механизм секретов может использоваться для генерации нового ключа и проверки паролей, сгенерированных с помощью этого ключа.
Механизм секретов TOTP может выступать как в роли генератора (как Google Authenticator), так и в роли провайдера (как служба входа в систему Google.com).
1. TOTP в роли провайдера
Механизм секретов TOTP может также работать в качестве провайдера TOTP. В этом режиме он может использоваться для генерации новых ключей и проверки паролей, сгенерированных с помощью этих ключей.
1.1. Настройка
Большинство механизмов секретов должны быть предварительно сконфигурированы, прежде чем они смогут выполнять свои функции. Эти шаги обычно выполняются оператором или инструментом управления конфигурацией.
-
Включите механизм секретов TOTP:
$ starvault secrets enable totp Success! Enabled the totp secrets engine at: totp/По умолчанию механизм секретов будет монтироваться по имени движка. Чтобы подключить механизм секретов по другому пути, используйте аргумент
-path. -
Создайте именованный ключ, используя опцию
generate. Это указывает StarVault на роль провайдера:$ starvault write totp/keys/my-user \ generate=true \ issuer=Vault \ account_name=user@test.comВывод: Key
Value
---
----
barcode
iVBORw0KGgoAAAANSUhEUgAAAMgAAADIEAAAAADYoy0BA…
url
otpauth://totp/Vault:user@test.com?algorithm=SHA1&digits=6&issuer=Vault&period=30&secret=V7MBSK324I7KF6KVW34NDFH2GYHIF6JY
Ответ включает в себя штрих-код в кодировке base64 и URL OTP. Оба варианта эквивалентны. Передайте их пользователю, который проходит аутентификацию с помощью TOTP. ---
2. TOTP в роли генератора
Механизм секретов TOTP может работать как генератор TOTP-кодов. В этом режиме он может заменить традиционные генераторы TOTP, такие как Google Authenticator. Это обеспечивает дополнительный уровень безопасности, поскольку возможность генерировать коды защищена политиками, а весь процесс подвергается аудиту.
2.1. Настройка
Большинство механизмов секретов должны быть предварительно сконфигурированы, прежде чем они смогут выполнять свои функции. Эти шаги обычно выполняются оператором или инструментом управления конфигурацией.
-
Включите механизмы секретов TOTP
$ starvault secrets enable totp Success! Enabled the totp secrets engine at: totp/По умолчанию механизм секретов будет монтироваться по имени движка. Чтобы подключить механизм секретов по другому пути, используйте аргумент
-path. -
Настройте именованный ключ. Имя этого ключа будет являться идентификатором пользователя.
$ starvault write totp/keys/my-key \ url="otpauth://totp/Vault:test@test.com?secret=Y64VEVMBTSXCYIWRSHRNDZW62MPGVU2G&issuer=Vault" Success! Data written to: totp/keys/my-keyurlсоответствует секретному ключу или значению штрих-кода, предоставленного сторонним сервисом.
2.2. Использование
После того как механизм секретов настроен и у пользователя/машины есть токен StarVault с соответствующими правами, он может генерировать учетные данные.
Сгенерируйте новый OTP на основе времени, считав из конечной точки /code имя ключа:
$ starvault read totp/code/my-key
Key Value
--- -----
code 260610
С помощью ACL можно ограничить использование механизма секретов TOTP таким образом, чтобы доверенные операторы могли управлять определениями ключей, а пользователи и приложения были ограничены в полномочиях, которые им разрешено читать.