Підписування та валідація образів

Ця сторінка описує, як використовувати Cosign для валідації походження артефактів образів Istio.

Cosign — це інструмент, розроблений у рамках проєкту sigstore, що спрощує підписування та валідацію підписаних артефактів Open Container Initiative (OCI), таких як контейнери.

Починаючи з Istio 1.12, ми підписуємо всі офіційно опубліковані образи контейнерів у рамках нашого процесу випуску нової версії. Кінцеві користувачі можуть перевіряти ці образи за допомогою процесу, описаного нижче.

Цей процес підходить як для ручного виконання, так і для інтеграції з конвеєрами збірки або розгортання для автоматизованої перевірки артефактів.

Необхідні умови

Перш ніж почати, виконайте наступне:

  1. Завантажте останню збірку Cosign для вашої архітектури, а також її підпис.

  2. Перевірте підпис бінарного файлу cosign:

    $ openssl dgst -sha256 \
        -verify <(curl -ssL https://raw.githubusercontent.com/sigstore/cosign/main/release/release-cosign.pub) \
        -signature <(cat /path/to/cosign.sig | base64 -d) \
        /path/to/cosign-binary
  3. Зробіть бінарний файл виконуваним (chmod +x) і перемістіть його в теку, що знаходиться в PATH.

Валідація образу

Щоб перевірити образ контейнера, виконайте наступне:

$ ./cosign-binary verify --key "https://istio.io/misc/istio-key.pub" gcr.io/istio-release/pilot:1.24.0

Цей процес працюватиме для будь-якого випущеного образу або кандидата на випуск, зібраного за допомогою інфраструктури збирання Istio.

Приклад з виводом:

$ cosign verify --key "https://istio.io/misc/istio-key.pub" gcr.io/istio-release/pilot:1.12.0


Verification for gcr.io/istio-release/pilot:1.12.0 --
The following checks were performed on each of these signatures:
  - The cosign claims were validated
  - The signatures were verified against the specified public key
  - Any certificates were verified against the Fulcio roots.

[{"critical":{"identity":{"docker-reference":"gcr.io/istio-release/pilot"},"image":{"docker-manifest-digest":"sha256:c37fd83f6435ca0966d653dc6ac42c9fe5ac11d0d5d719dfe97de84acbf7a32d"},"type":"cosign container image signature"},"optional":null}]
Чи була ця інформація корисною?
Чи є у вас пропозиції щодо покращення?

Дякуємо за ваш відгук!