Nota

Este complemento es parte del colección community.sops (versión 1.0.4).

Para instalarlo use: ansible-galaxy collection install community.sops.

Para usarlo en un libro de jugadas, especifique: community.sops.sops_encrypt.

Nuevo en la versión 0.1.0: de community.sops

  • Sinopsis
  • Parámetros
  • Notas
  • Ver también
  • Ejemplos de

Sinopsis

  • Permite cifrar datos binarios (codificados en Base64), datos de texto, datos JSON o YAML con sops.

Parámetros

Parámetro Opciones / Valores predeterminados Comentarios
atributos cuerda agregado en 2.3 de ansible.builtin Los atributos que debe tener el archivo o directorio resultante. Para obtener indicadores compatibles, consulte la página de manual para chattr en el sistema de destino. Esta cadena debe contener los atributos en el mismo orden que el mostrado por lsattr. los = El operador se asume como predeterminado, de lo contrario + o - los operadores deben incluirse en la cadena.

alias: attr
aws_access_key_id cuerda agregado en 1.0.0 de community.sops El ID de la clave de acceso de AWS que se utilizará para las solicitudes a AWS. Establece la variable de entorno AWS_ACCESS_KEY_ID para la llamada de sops.
aws_profile cuerda agregado en 1.0.0 de community.sops El perfil de AWS que se utilizará para las solicitudes a AWS. Esto corresponde a los sops --aws-profile opción.
aws_secret_access_key cuerda agregado en 1.0.0 de community.sops La clave de acceso secreta de AWS que se utilizará para las solicitudes a AWS. Establece la variable de entorno AWS_SECRET_ACCESS_KEY para la llamada de sops.
aws_session_token cuerda agregado en 1.0.0 de community.sops El token de sesión de AWS que se utilizará para las solicitudes a AWS. Establece la variable de entorno AWS_SESSION_TOKEN para la llamada de sops.
azure_kv lista / elementos = cadena agregado en 1.0.0 de community.sops Direcciones URL de Azure Key Vault para usar. Esto corresponde a los sops --azure-kv opción.
config_path sendero agregado en 1.0.0 de community.sops Ruta al archivo de configuración de sops. Si no se establece, sops buscará de forma recursiva el archivo de configuración comenzando por el archivo que está cifrado o descifrado. Esto corresponde a los sops --config opción.
content_binary cuerda Los datos a cifrar. Debe ser Codificado en Base64 datos binarios. Tenga en cuenta que es posible que el módulo no sea idempotente si los datos se pueden analizar como JSON o YAML. Exactamente uno de content_text, content_binary, content_json y content_yaml debe especificarse.
content_json diccionario Los datos a cifrar. Debe ser un diccionario JSON. Exactamente uno de content_text, content_binary, content_json y content_yaml debe especificarse.
content_text cuerda Los datos a cifrar. Debe ser un texto Unicode. Tenga en cuenta que es posible que el módulo no sea idempotente si el texto se puede analizar como JSON o YAML. Exactamente uno de content_text, content_binary, content_json y content_yaml debe especificarse.
content_yaml diccionario Los datos a cifrar. Debe ser un diccionario YAML. Tenga en cuenta que Ansible solo permite pasar datos que se pueden representar como un diccionario JSON. Exactamente uno de content_text, content_binary, content_json y content_yaml debe especificarse.
enable_local_keyservice booleano agregado en 1.0.0 de community.sops
    Opciones:

  • no
Dile a sops que use el servicio de clave local. Esto corresponde a los sops --enable-local-keyservice opción.
encrypted_regex cuerda agregado en 1.0.0 de community.sops Establezca el sufijo de la clave cifrada. Cuando se especifica, solo se cifrarán las claves que coincidan con la expresión regular. Esto corresponde a los sops --encrypted-regex opción.
sufijo_cifrado cuerda agregado en 1.0.0 de community.sops Anule el sufijo de la clave cifrada. Cuando se establece en una cadena vacía, se cifrarán todas las claves que no estén marcadas explícitamente por sufijo_desencriptado. Esto corresponde a los sops --encrypted-suffix opción.
encryption_context lista / elementos = cadena agregado en 1.0.0 de community.sops Lista de pares de formato de contexto de cifrado KMS key:value. Esto corresponde a los sops --encryption-context opción.
fuerza booleano
    Opciones:

  • no
Forzar la reescritura del archivo cifrado.
gcp_kms lista / elementos = cadena agregado en 1.0.0 de community.sops ID de recursos de GCP KMS para usar. Esto corresponde a los sops --gcp-kms opción.
grupo cuerda Nombre del grupo que debería ser propietario del archivo / directorio, como se enviaría a chown.
hc_vault_transit lista / elementos = cadena agregado en 1.0.0 de community.sops URI de claves de HashiCorp Vault para usar. Por ejemplo, https://vault.example.org:8200/v1/transit/keys/dev. Esto corresponde a los sops --hc-vault-transit opción.
servicio de llaves lista / elementos = cadena agregado en 1.0.0 de community.sops Especifique los servicios clave para usar junto al local. Se debe especificar un servicio clave en el formulario protocol://address, por ejemplo tcp://myserver.com:5000. Esto corresponde a los sops --keyservice opción.
kms lista / elementos = cadena agregado en 1.0.0 de community.sops Lista de ARN de KMS para usar. Esto corresponde a los sops --kms opción.
modo crudo Los permisos que debe tener el archivo o directorio resultante. Para aquellos que solían / usr / bin / chmod recuerde que los modos son en realidad números octales. Debe agregar un cero a la izquierda para que el analizador YAML de Ansible sepa que es un número octal (como 0644 o 01777) o citarlo (como '644' o '1777') para que Ansible reciba una cadena y pueda hacer su propia conversión de cadena a número. Darle a Ansible un número sin seguir una de estas reglas terminará con un número decimal que tendrá resultados inesperados. A partir de Ansible 1.8, el modo se puede especificar como un modo simbólico (por ejemplo, u+rwx o u=rw,g=r,o=r). Si mode no se especifica y el archivo de destino no existe, el predeterminado umask en el sistema se utilizará al configurar el modo para el archivo recién creado. Si mode no se especifica y el archivo de destino lo hace existen, se utilizará el modo del archivo existente. Especificando mode es la mejor manera de garantizar que los archivos se creen con los permisos correctos. Consulte CVE-2020-1736 para obtener más detalles.
dueño cuerda Nombre del usuario que debería ser propietario del archivo / directorio, como se enviaría a chown.
sendero sendero / requerido Los sops cifran el archivo.
pgp lista / elementos = cadena agregado en 1.0.0 de community.sops Huellas digitales PGP para usar. Esto corresponde a los sops --pgp opción.
selevel cuerda La parte de nivel del contexto del archivo SELinux. Este es el atributo MLS / MCS, a veces conocido como el range. Cuando se establece en _default, usará el level parte de la póliza si está disponible.
serola cuerda La parte del rol del contexto del archivo SELinux. Cuando se establece en _default, usará el role parte de la póliza si está disponible.
setype cuerda La parte de tipo del contexto del archivo SELinux. Cuando se establece en _default, usará el type parte de la póliza si está disponible.
seuser cuerda La parte del usuario del contexto del archivo SELinux. Por defecto usa el system política, cuando corresponda. Cuando se establece en _default, usará el user parte de la póliza si está disponible.
shamir_secret_sharing_threshold entero agregado en 1.0.0 de community.sops El número de claves distintas necesarias para recuperar la clave de datos con Compartir el secreto de Shamir. Si no se establece aquí y en el archivo de configuración de sops, por defecto será 0. Esto corresponde a los sops --shamir-secret-sharing-threshold opción.
sops_binary sendero agregado en 1.0.0 de community.sops Camino al binario sops. Usos por defecto sops.
unencrypted_regex cuerda agregado en 1.0.0 de community.sops Establezca el sufijo de clave sin cifrar. Cuando se especifique, solo las claves que coincidan con la expresión regular se dejarán sin cifrar. Esto corresponde a los sops --unencrypted-regex opción.
sufijo_desencriptado cuerda agregado en 1.0.0 de community.sops Reemplace el sufijo de clave sin cifrar. Esto corresponde a los sops --unencrypted-suffix opción.
unsafe_writes booleano agregado en 2.2 de ansible.builtin
    Opciones:

  • no
Influir en el momento de utilizar la operación atómica para evitar la corrupción de datos o lecturas inconsistentes del archivo de destino. De forma predeterminada, este módulo utiliza operaciones atómicas para evitar la corrupción de datos o lecturas inconsistentes de los archivos de destino, pero a veces los sistemas están configurados o simplemente dañados para evitar esto. Un ejemplo son los archivos montados en la ventana acoplable, que no se pueden actualizar atómicamente desde el interior del contenedor y solo se pueden escribir de manera insegura. Esta opción permite que Ansible recurra a métodos inseguros para actualizar archivos cuando fallan las operaciones atómicas (sin embargo, no obliga a Ansible a realizar escrituras inseguras). ¡IMPORTANTE! Las escrituras no seguras están sujetas a condiciones de carrera y pueden provocar daños en los datos.

Notas

Nota

  • Apoyos check_mode.

Ver también

Ver también

búsqueda community.sops.sops

La búsqueda de sops se puede utilizar para descifrar archivos cifrados con sops.

Ejemplos de

- name: Encrypt a secret text
  community.sops.sops_encrypt:
    path: text-data.sops
    content_text: This is a secret text.

- name: Encrypt the contents of a file
  community.sops.sops_encrypt:
    path: binary-data.sops
    content_binary: "{{ lookup('ansible.builtin.file', '/path/to/file', rstrip=false) | b64encode }}"

- name: Encrypt some datastructure as YAML
  community.sops.sops_encrypt:
    path: stuff.sops.yaml
    content_yaml: "{{ result }}"

Autores

  • Felix Fontein (@felixfontein)