Ensure Content Trust on Kubernetes using Notary and Open Policy Agent
Реализация проверки подписи образа через OPA при деплое в Kubernetes с помощью интеграции с Notary-сервисом.
В рамках CI сборки формируется подпись к образу с помощью Notary сервиса. При формировании подписи, ее значение сохраняется в БД. Каждый раз, когда происходит попытка деплоя нового ворклоада, OPA с помощью ValidatingAdmissionWebhook проверяет наличие подписи (digest) к образу и идёт с ним в Notary, чтобы убедиться, что подпись была сформирована именно им. В случае, если образ был подменен злоумышленником или изменен за пределами security-проверок в CI, образ развернут быть не сможет.
Так как работа происходит с OPA, в данной схеме есть возможность применить и MutatingAdmissionWebhook. Например, прикреплять digest, если он отсутствует, но подпись для данного образа уже была сформирована и хранится в Notary.
Про альтернативные способы формирования Content Trust я писал ранее.
#opa #k8s #dev #ops