Immutable Identity
Дайджести SHA-256 гарантують, що просуваний артефакт є байтно ідентичним артефакту, відсканованому та схваленому.
Дайджест-Перша версія
Реліз — це набір OCI дайджестів, вирішених під час створення. Теги – це зрозумілі людині псевдоніми; дайджести є криптографічною правдою.
Змінні теги створюють неоднозначність. Той самий тег може вказувати на різний вміст з часом. Створення перших версій дайджесту усуває цю невизначеність.
Дайджести SHA-256 гарантують, що просуваний артефакт є байтно ідентичним артефакту, відсканованому та схваленому.
Будь-яка модифікація артефакту змінює його дайджест. Невідповідність часу підключення = помилка розгортання. Втручання неможливо приховати.
Точно знати, який артефакт було розгорнуто, де, коли та чому — за допомогою криптографічного підтвердження, що пов’язує сканування, схвалення та розгортання.
Відкат повертає до точних завідомо-якісних дайджестів, а не до «незалежно від того, що :latest вказує на зараз». Ті самі байти, гарантовано.
Випуск у Stella об’єднує кілька компонентів, кожен з яких визначається своїм дайджестом OCI. Сам випуск має семантичну версію для читання людиною.
Приклад випуску Пакет
Реліз: myapp-v2.3.1
Компоненти:
api: sha256:abc123...
worker: sha256:def456...
frontend: sha256:789ghi...
Створюйте випуски та керуйте ними з CLI
$ stella release create --name myapp-v2.3.1 --components api:v2.3.1,worker:v2.3.1
stella release list --environment production\nstella release show myapp-v2.3.1 --components Коли ви створюєте випуск, Stella негайно перетворює всі теги на їхні поточні дайджести. З цього моменту випуск є незмінним.
Гарантія незмінності
Після створення випуску його набір дайджестів не може змінитися. У кожному середовищі кожного разу розгортатимуться ті самі байти.
Кожне розгортання генерує незмінні артефакти, які забезпечують відтворюваність, аудит і відкат.
Docker Compose файл із усіма посиланнями на зображення, закріпленими в конкретних дайджестах. Включає Stella мітки метаданих для відстеження.
image: registry.example.com/myapp/api@sha256:abc123...
labels:
stella.release.id: "rel-uuid"
stella.digest: "sha256:abc123..."
Файл метаданих JSON, розміщений на цілях розгортання, вказуючи поточний випуск, компоненти, стратегію розгортання та попередню версію для відкоту.
"release": { "name": "myapp-v2.3.1" }
"deployment": { "strategy": "rolling" }
"previous": { "digest": "sha256:789..." }
"signature": "base64-encoded-signature"
Кожний випуск прив’язує докази безпеки до точних дайджестів, які розгортаються. Докази переміщуються разом із випуском через просування.
| Поле доказів | Вміст |
|---|---|
| sbomDigest | SHA-256 SBOM, створеного для цього дайджесту |
| scanVerdict | Результат оцінки політики «Пройшов/не пройшов» із посиланнями на докази |
| reachabilityProof | CAS URI підписаного графіка досяжності для цього дайджесту |
| policyHash | Хеш версії політики, яка використовується для оцінки |
Детерміноване відтворення: враховуючи той самий випуск і хеш політики, повторна оцінка дає бітово-ідентичні вердикти. Аудитори можуть перевіряти рішення через місяці.
Установіть Stella Ops і почніть керувати версіями випусків за хешем вмісту з повним зв’язуванням доказів.