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