Incluir la biblioteca de criptografía Pyca

En esta página se describe cómo actualizar la CLI de Google Cloud para habilitar la compatibilidad con el envoltorio automático de claves para importarlas de forma segura en Cloud Key Management Service. Para ello, debes instalar la biblioteca de criptografía Pyca. La versión 2.2.0 (o una posterior) añade compatibilidad con el mecanismo de envoltorio aes_key_wrap_with_padding obligatorio.

Antes de empezar

  • Instala o actualiza Google Cloud CLI a la versión 253.0.0 o posterior.
  • Instala el comando pip si es posible. pip es la interfaz de línea de comandos independiente de la plataforma para el índice de paquetes de Python. Es posible que el gestor de paquetes proporcionado por tu sistema operativo no ofrezca la versión 2.2.0 o una posterior de la biblioteca criptográfica Pyca.

Instalar y usar pip

Puedes instalar y usar pip en sistemas Linux, macOS o Windows.

Este comando instala la biblioteca en tu entorno de usuario y especifica la versión mínima que se debe instalar. Para instalarlo en todo el sistema, omite la marca --user. Es posible que tengas que instalar pip como usuario con privilegios.

pip install --user "cryptography>=2.2.0"

Después de instalar las bibliotecas criptográficas de Pyca, debes habilitar los paquetes del sitio para que la CLI de gcloud pueda usar las bibliotecas.

Instalar en Linux con un gestor de paquetes

Sigue estas instrucciones en sistemas Linux si no puedes usar el comando pip.

Debian o Ubuntu

Si usas un sistema basado en Debian o Ubuntu, puedes instalar la biblioteca Pyca cryptographic con el comando apt-get.

  1. Consulta las versiones del paquete python-cryptography disponibles en la base de datos de paquetes. Se requiere la versión 2.2.0 o una posterior.

    apt policy python-cryptography
    
  2. Instala el paquete.

    sudo apt-get install python-cryptography
    

    Si es necesario, especifica la versión que quieres instalar.

    sudo apt-get install python-cryptography=version
    

Después de instalar las bibliotecas criptográficas de Pyca, debes habilitar los paquetes del sitio para que la CLI de gcloud pueda usar las bibliotecas.

Red Hat, CentOS o SUSE

Si tu sistema usa RPMs para gestionar paquetes, puedes instalar la biblioteca criptográfica Pyca con el comando yum.

  1. Consulta las versiones de python-cryptography disponibles en la base de datos de paquetes. Se requiere la versión 2.2.0 o una posterior.

    yum --showduplicates list python2-cryptography
    
  2. Instala el paquete.

    sudo yum install python2-cryptography
    

    Si es necesario, especifica la versión que quieres instalar.

    sudo yum install python2-cryptography-version
    

Después de instalar las bibliotecas criptográficas de Pyca, debes habilitar los paquetes del sitio para que la CLI de gcloud pueda usar las bibliotecas.

Habilitar paquetes de sitios

De forma predeterminada, Google Cloud CLI ignora las bibliotecas de Python instaladas en tu sistema local. Para permitir que la CLI de Google Cloud use la biblioteca criptográfica Pyca, debes habilitar los paquetes de sitios.

Para habilitar los paquetes del sitio, asigna el valor 1 a la variable de entorno CLOUDSDK_PYTHON_SITEPACKAGES. Si los paquetes del sitio están habilitados, la CLI de gcloud puede usar bibliotecas adicionales fuera del directorio google-cloud-sdk/lib.

Linux

export CLOUDSDK_PYTHON_SITEPACKAGES=1

macOS

export CLOUDSDK_PYTHON_SITEPACKAGES=1

Windows

set CLOUDSDK_PYTHON_SITEPACKAGES=1

Si habilita los paquetes de sitios, es posible que algunos comandos de la CLI de gcloud fallen. Le recomendamos que inhabilite los paquetes de sitios después de importar sus claves.

Inhabilitar paquetes de sitios

Una vez que hayas terminado de importar las claves, te recomendamos que inhabilites los paquetes de sitios en los sistemas en los que uses la CLI de gcloud. Para inhabilitar los paquetes de sitios, asigna el valor 0 a CLOUDSDK_PYTHON_SITEPACKAGES.

Linux

export CLOUDSDK_PYTHON_SITEPACKAGES=0

macOS

export CLOUDSDK_PYTHON_SITEPACKAGES=0

Windows

set CLOUDSDK_PYTHON_SITEPACKAGES=0