Привет!



HashiCorp подготовили интересную обзорную статью про один из механизмов аутентификации – AppRole. В статье раскрывается принцип работы:

🍭 Для получения токена аутентификации в Vault приложение должно предоставить Role ID (нечто вроде Username) и Secret ID (нечто вроде Password).

🍭 Role ID и Secret ID должны передаваться в приложение через различные каналы.

🍭 Secret ID должен передаваться только в определенные моменты времени (например, при старте приложения).



Сам концепт напоминает двухфакторную аутентификацию: мы знаем Username (Role ID) и нам нужен одноразовый идентификатор – OTP (Secret ID).



В статье приводится схема распределения доставки Role ID и Secret ID с использованием response wrapping (обратную процедуру, unwrapping, может сделать только уполномоченный client).



В завершении – описываются 11 (!) шагов этой процедуры. Желаем приятного чтения! ☺️



P.S. Также в статье даются простые и понятные аналогии для абстракций Vault, что упрощает общее понимание концепций, в которых он работает. И множество отсылок на полезные материалы в документации решения.