Validación de la firma de imagen de Verify Bridge on Docker

La imagen de icr.io/isv-saas/verify-bridge:latest en IBM® Container Registry está firmada y, cuando la imagen se extrae a la máquina, esta firma se puede validar utilizando Skopeo o Podman.

Antes de empezar

Necesitas la clave pública.
-----BEGIN PGP PUBLIC KEY BLOCK-----

mQINBGQjSS0BEADBqABkTk0zd3CYmDWlA+NupW8Pn6gWni6xfpARhVZPmBP/DI/u
s+wuaEJVgA9Sf13qlFdd166BCYayFv3V7bbwX2i0sXVqSR6dxkigM+Y700e0VhDC
eGyTnLIwG5z3SEG26Wo0y+3x14tWe0jG7hV01lb2rx+1k9k4pHfA6AOPVtuYEmoC
ZrIstMcTa6hPGft2wJL1tnpB+MRLp1DlnFiaLo9FWFJ1zEELSNAkUw+zJNRrnzpT
C3RGh+I0byqB4EKxa2+P8minLetQVEt9wBc7Yr2BngHWKWAMiWTpZOhu3WhUrWxm
mTdshdvu0xw+HeRMFzARQMddDpmBtrkRhSXCsvNRIaElhZcZXm7UMzW5w/NK7H1w
dyB2HKiGZBcD4gdx2iBSJtMHrlKua0Cvrz7AVabYw7hR29TtmRaH8q4eMp/yRNt3
abZ9SZsEPAxv6Ur33AaqxO7s4z9fWXg51j/YtL3VnXiAsY+MbDxUwsn6vpK6IVPW
lmm/7V2PZDmq0+9OdV6poi2IvYKtozD1/oM5kE5WEDn0p/HL8XPg6GcgVSd+rh+J
Z37AccDjs9UHNBseCkQk1zFrfjP+HWZbb6GzZecMIjThagA2VjxYM+GDlE6AAElf
pdZhI/nZR14csUoOgPVPbHI+HS6KQSs32hhev3X10AnYo6rGTObZx80ArQARAB
tC1JQk0gU2VjdXJpdHkgVmVyaWZ5IEJyaWRnZSA8cHNpcnRAdXMuaWJtLmNvbT6J
AjoEEwEIACQFAmQjSS0CGw8FCwkIBwIGFQoJCAsCBBYCAwECHgEFCQAAAAAACgkQ
AQH8KJX/rscK7BAAlpPIi/Wjqroryw560p6GxvjHRbB/rofIbyled5u7Mw/U74Nl
6x/P8Vytpxx/om5JgbP/OP01iHakeJHHkpgux7bJYqvMRlWlR88H806gVAttaFUU
DKQzchVP1R+/gqaoXpNDmZytapYcsDICX+B2aXo1MshTKoYd8MYOnoKnm69dhqlL
ImzMxZk9bRvmsOrx4XB7+1IdoBA/Hck0xrsQTlQocHy4IQICErnJwgYhoSClcSjG
6Nm6p+BfR4oWwKmj51OyzGr7aywJu3304ZE4Ea1qGWVAoF+FinbVcHuA6mYGA+cf
TsZcqsNaMct7KDnC9lzRQpY6MzghHaCAHqE2oIfp7uSCfNYqtN5GQTC6VBcFALoK
Nxm2+YI6WDpJKx4nkGm4NpPsFFF0meofqWMu/oB4U+lADPhJvmqTNxjdqcc+gjEL
skLnA5dkijownmzwWHQHEPzl00Fdx3LS4v26rT0jE/HCrUIhKNrr82hQ90ELGwas
o5gcMuXd85qO1FzPrBKKZU1Ax2SH6J1TYZ6El5i//qUAHY7vc5M+a64IiyWBEol3
xu68GqEBRQi3ZrCNIxZ0ulhOUcs7G275mKClw4uy+f18i91SlyX1zdZ18W9ENcNf
8QY6g9cU6Gn6SfLNnr0wLAMzFt78ylNQTkfnGqr9egsJiwZGCT7eFNtQ7/s=
=hwfo

-----END PGP PUBLIC KEY BLOCK-----

Acerca de esta tarea

El tiempo de ejecución de contenedor que utilizan Red Hat® OpenShift®, Skopeoy Podman son un archivo policy.json que describe la política de validación de firmas. Cuando se crea la política y se aplica a las herramientas de contenedor (Red Hat OpenShift, Skopeoo Podman), la política aplica la integridad de la imagen validando la firma. También puede validar otras partes de la carga útil de firma simple.

Procedimiento

  1. Inicie sesión en el sistema de destino.
  2. Cree o actualice un /etc/containers/policy.json o un archivo como, por ejemplo, ~/policy.json.
    Consulte la Red Hat OpenShift documentación sobre la política de imágenes: podman-image-trust. Si tiene más de una clave pública de una plataforma antigua y nueva o después de la renovación del certificado, puede concatenar las claves públicas de gpg y utilizar ese archivo en <public key>.
    Por ejemplo:
    {
        "default": [
            {
                "type":"reject"
            }
        ],
        "transports":
            {
                "docker":
                    {
                        "": [{ "type": "signedBy", "keyType": "GPGKeys", "keyPath": "<path to public keyfile>"}]
                    }
            }
    }
  3. Especifique el método para validar Verify Bridge on Docker Image Signature utilizando uno de los mandatos siguientes.
    • Para validar la firma utilizando Skopeo para copiar en un directorio temporal local, utilice el mandato siguiente.
      skopeo copy --policy ~/policy.json docker://icr.io/isv-saas/verify-bridge:latest dir:./temp
    • Para validar la firma utilizando Skopeo para copiar en un directorio temporal local con la opción --policy , utilice el mandato siguiente.
      skopeo copy --policy ~/policy.json docker://icr.io/isv-saas/verify-bridge:latest dir:./temp
    • Para validar la firma durante una extracción utilizando Podman, utilice el mandato siguiente.
      podman pull --signature-policy ~/policy.json icr.io/isv-saas/verify-bridge:latest