AutoSSL
Desplegar certificado

Azure Blob Storage

Cómo desplegar automáticamente certificados SSL en un contenedor de Azure Blob Storage.

Descripción general

AutoSSL puede cargar automáticamente los archivos del certificado SSL en un contenedor de Azure Blob Storage. Cada certificado se archiva en una ruta versionada y también se actualiza en una ruta latest/, para que los consumidores posteriores (por ejemplo, Nginx, Caddy o scripts personalizados que obtienen certificados de Blob Storage) lo encuentren con facilidad.

Para gestionar y ejecutar este despliegue, consulte la sección Gestión de despliegues.

Parámetros de configuración

Al añadir o editar este destino de despliegue en la consola de AutoSSL, configure estos parámetros:

ParámetroDescripciónEjemplo
Nombre de la cuenta de almacenamientoNombre de la cuenta de Azure Storage que aloja el contenedor de blobs.mystorageaccount
Nombre del contenedorNombre del contenedor de blobs en el que se cargarán los archivos del certificado.ssl-certs
Prefijo del nombre del blob(Opcional) Prefijo para organizar los archivos del certificado en el contenedor. Si se indica, los archivos se cargan bajo ese prefijo. La barra final es opcional.certs/example.com/

Cómo funciona

Cuando AutoSSL despliega un certificado en un contenedor de blobs (por ejemplo, la cuenta de almacenamiento mystorageaccount, el contenedor ssl-certs y el prefijo certs/example.com/), realiza estos pasos:

  1. Preparación del certificado:

    • Divide la cadena completa del certificado en archivos PEM individuales: cert.pem (certificado hoja), privkey.pem (clave privada, codificada en PKCS#8), chain.pem (cadena intermedia) y fullchain.pem (cadena completa).
    • Genera un archivo README.md con los metadatos del certificado y un enlace a https://autossl.dev para la trazabilidad.
    • Lee la fecha notBefore y la huella SHA1 del certificado para generar el nombre del directorio de archivo (formato: YYYY-MM-DD_<first 8 chars of SHA1>).
  2. Carga de archivos:

    • Carga los archivos del certificado (cuatro archivos PEM y README.md) en dos rutas del contenedor:
      • Ruta de archivo — certs/example.com/2026-05-30_e5f6a7b8/cert.pem (y privkey.pem, chain.pem, fullchain.pem, README.md). Esta ruta es única para cada emisión y nunca se sobrescribe.
      • Ruta latest — certs/example.com/latest/cert.pem (y privkey.pem, chain.pem, fullchain.pem, README.md). Esta ruta siempre refleja el certificado cargado más recientemente.

La ruta latest/ permite que los servicios posteriores obtengan siempre el certificado actual desde un nombre de blob fijo. Los certificados anteriores siguen disponibles en sus directorios de archivo versionados.

Ejemplo de estructura del contenedor

Después de varias renovaciones, la estructura del contenedor tendrá este aspecto:

certs/example.com/
├── 2026-03-01_a1b2c3d4/
│   ├── cert.pem
│   ├── privkey.pem
│   ├── chain.pem
│   ├── fullchain.pem
│   └── README.md
├── 2026-05-30_e5f6a7b8/
│   ├── cert.pem
│   ├── privkey.pem
│   ├── chain.pem
│   ├── fullchain.pem
│   └── README.md
└── latest/
    ├── cert.pem
    ├── privkey.pem
    ├── chain.pem
    ├── fullchain.pem
    └── README.md

Formato de clave privada

privkey.pem está codificado en formato PKCS#8 (-----BEGIN PRIVATE KEY-----). Los servidores y las herramientas modernos (Nginx, Caddy, Traefik, OpenSSL 1.1+, etc.) admiten ampliamente este formato.

Si su entorno exige el formato PKCS#1 (por ejemplo, -----BEGIN RSA PRIVATE KEY----- para claves RSA), conviértalo en local antes de usarlo:

openssl rsa -in privkey.pem -out privkey-pkcs1.pem

Requisitos de la clave de acceso

Para usar Azure Blob Storage, este proveedor requiere una entidad de servicio de Azure.

Permisos necesarios

La entidad de servicio debe tener permiso para crear y sobrescribir blobs en el contenedor de destino. Asigne este rol RBAC del plano de datos en el ámbito de la cuenta de almacenamiento o del contenedor:

  • Storage Blob Data Contributor (recomendado)

Los roles del plano de control, como Storage Account Contributor, no conceden permiso para cargar blobs. Si el despliegue falla con This request is not authorized to perform this operation, compruebe tanto la asignación del rol RBAC como la configuración del firewall de la cuenta de almacenamiento que se describe a continuación.

Asignar el rol RBAC

Conceder el rol en el ámbito del contenedor sigue el principio de privilegio mínimo:

  1. En el portal de Azure, abra su Storage Account → Containers → seleccione el contenedor de destino.
  2. Vaya a Access control (IAM) → Add role assignment.
  3. En la pestaña Role, seleccione Storage Blob Data Contributor.
  4. En la pestaña Members:
    • Establezca Assign access to en User, group, or service principal.
    • Haga clic en Select members.
    • Busque por el display name del registro de la aplicación (por ejemplo, AutoSSL) o por el Client ID.
    • Seleccione el resultado cuyo tipo sea Application o Service principal, y no una cuenta de usuario.
  5. Revise y asigne el rol.

Si la aplicación no aparece en los resultados de búsqueda, abra Microsoft Entra ID → Enterprise applications, establezca Application type en All applications y confirme que la entidad de servicio existe. Las entidades recién creadas pueden tardar unos minutos en aparecer en la búsqueda de IAM.

Para más información, consulte la documentación de control de acceso de Azure Blob Storage.

Configurar el firewall de la cuenta de almacenamiento

AutoSSL se conecta a Blob Storage a través de la Internet pública. Si la cuenta de almacenamiento restringe el acceso de red, las solicitudes se bloquean aunque RBAC esté configurado correctamente.

  1. Abra su Storage Account → Networking → Firewalls and virtual networks.
  2. Elija una de estas opciones:
    • Enabled from all networks: es la opción más sencilla para la configuración inicial y las pruebas.
    • Enabled from selected networks: añada las direcciones IP de salida de AutoSSL en Address range.
  3. Guarde los cambios y vuelva a intentar el despliegue.

Si su cuenta de almacenamiento solo es accesible a través de una red virtual o un endpoint privado, AutoSSL no puede alcanzarla desde la Internet pública a menos que enrute el tráfico por una ruta de red compatible.

Azure Blob Storage | AutoSSL