Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Puede agregar certificados de seguridad digital para usarlos en el código de aplicación o para ayudar a proteger nombres personalizados del sistema de nombres de dominio (DNS) en Azure App Service. App Service proporciona un servicio de alojamiento web autocorrectivo y altamente escalable. Actualmente, los certificados se denominan certificados de seguridad de la capa de transporte (TLS). Anteriormente se conocían como certificados SSL (Secure Sockets Layer). Estos certificados privados o públicos le ayudan a proteger las conexiones a Internet. Los certificados cifran los datos enviados entre el explorador, los sitios web que visita y el servidor de sitios web.
En la tabla siguiente se enumeran las opciones para agregar certificados en App Service.
Opción | Descripción |
---|---|
Crear un certificado administrado de App Service gratuito | Un certificado privado gratuito y fácil de usar si necesita mejorar la seguridad de su dominio personalizado en App Service. |
Importación de un certificado de App Service | Azure administra el certificado privado. Combina la simplicidad de la administración automatizada de certificados con la flexibilidad de las opciones de renovación y exportación. |
Importación de un certificado desde Azure Key Vault | Resulta útil si usa Key Vault para administrar los certificados PKCS12. Consulte Requisitos de certificados privados. |
Carga de un certificado privado | Si ya tiene un certificado privado de un proveedor que no es de Microsoft, puede cargarlo. Consulte Requisitos de certificados privados. |
Carga de un certificado público | Los certificados públicos no se usan para proteger los dominios personalizados, pero se pueden cargar en el código si los necesita para acceder a los recursos remotos. |
Requisitos previos
Cree una aplicación de App Service. El plan de App Service de la aplicación debe ser del nivel Básico, Estándar, Premium o Aislado. Para actualizar el nivel, consulte Ampliar una aplicación.
En el caso de los certificados privados, debe asegurarse de que satisface todos los requisitos de App Service.
Solo certificados gratuitos:
- Asigne el dominio donde desea colocar el certificado en App Service. Para más información, consulte Tutorial: Asignación de un nombre DNS personalizado existente a Azure App Service.
- Para un dominio raíz (como contoso.com), asegúrese de que la aplicación no tiene ninguna restricción de IP configurada. Para que se puedan crear y renovar los certificados de un dominio raíz, es necesario que la aplicación sea accesible desde Internet.
Requisitos de certificados privados
El certificado administrado de App Service gratuito o el certificado de App Service ya cumplen los requisitos de App Service. Si opta por cargar o importar un certificado privado en App Service, este certificado debe cumplir los siguientes requisitos:
- Se exporta como un archivo PFX protegido con contraseña.
- Contienen todos los certificados intermedios y el certificado raíz de la cadena de certificados.
Si desea ayudar a proteger un dominio personalizado en un enlace TLS, el certificado debe cumplir estos requisitos adicionales:
- Contienen un uso extendido de clave para la autenticación del servidor (OID = 1.3.6.1.5.5.7.3.1).
- Ser firmado por una entidad de certificación de confianza.
Nota:
Los certificados criptográficos de curva elíptica (ECC) funcionan con App Service cuando se cargan como PFX, pero actualmente no se pueden importar desde Key Vault. No están cubiertos por este artículo. Si desea conocer los pasos exactos para crear certificados ECC, consulte a su entidad de certificación.
Después de agregar un certificado privado a una aplicación, el certificado se almacena en una unidad de implementación enlazada al grupo de recursos, la región y el sistema operativo (SO) del plan de App Service. Internamente, se denomina espacio web. De este modo, el certificado es accesible para otras aplicaciones del mismo grupo de recursos, región y combinación del sistema operativo. Los certificados privados cargados o importados en App Service se comparten con los servicios de aplicaciones en la misma unidad de implementación.
Puede agregar hasta 1000 certificados privados por espacio web.
Crear un certificado administrado gratuito
El certificado administrado gratuito de App Service es una solución llave en mano que ayuda a proteger el nombre DNS personalizado en App Service. App Service administra este certificado de servidor TLS/SSL sin ninguna acción de usted.
Antes de crear un certificado administrado gratuito, asegúrese de cumplir los requisitos previos de la aplicación.
DigiCert emite certificados gratuitos. Para algunos dominios, debe permitir explícitamente a DigiCert como emisor de un certificado mediante la creación de un registro de dominio de autorización de autoridad certificadora (CAA) con el valor .
Azure administra completamente los certificados, por lo que cualquier aspecto del certificado administrado, incluido el emisor raíz, puede cambiar en cualquier momento. Las renovaciones de certificados cambian los elementos clave públicos y privados. Todos estos cambios de certificado están fuera del control. Asegúrese de evitar dependencias difíciles y anclar certificados al certificado administrado o a cualquier parte de la jerarquía de certificados. Si necesita el comportamiento de anclaje de certificados, agregue un certificado al dominio personalizado mediante cualquier otro método disponible en este artículo.
El certificado gratuito presenta las siguientes limitaciones:
- No admite certificados comodín.
- No admite el uso como certificado de cliente mediante huellas digitales de certificado, que está planeada para desuso y eliminación.
- No admite DNS privado.
- No se puede exportar.
- No se admite en App Service Environment.
- Solo admite caracteres alfanuméricos, guiones (-) y puntos (.).
- Admite dominios personalizados de una longitud de hasta 64 caracteres.
- Debe tener un registro D que apunte a la dirección IP de la aplicación web.
- Debe estar en aplicaciones a las que se pueda acceder de manera pública.
- No se admite con dominios raíz integrados con Azure Traffic Manager.
- Debe cumplir todos los criterios anteriores para la correcta emisión y renovación de certificados.
En el Portal de Azure, en el panel izquierdo, seleccione App Services><>.
En el panel izquierdo de la aplicación, seleccione Certificados. En el panel Certificados administrados , seleccione Agregar certificado.
Seleccione el dominio personalizado para el certificado gratuito y, luego, seleccione Validar. Cuando finalice la validación, seleccione Agregar. Solo puede crear un certificado administrado para cada dominio personalizado admitido.
Una vez finalizada la operación, el certificado aparece en la lista Certificados administrados .
Para proporcionar seguridad para un dominio personalizado con este certificado, debe crear un enlace de certificado. Siga los pasos descritos en Protección de un nombre DNS personalizado con un enlace TLS/SSL en Azure App Service.
Importación de un certificado de App Service
Para importar un certificado de App Service, primero compre y configure un certificado de App Service y siga los pasos a continuación.
En el Portal de Azure, en el panel izquierdo, seleccione App Services><>.
En el panel izquierdo de la aplicación, seleccione Certificados>Traiga sus propios certificados (.pfx)>Agregar certificado.
En Origen, seleccione Importar certificado de App Service.
En Certificado de App Service, seleccione el certificado que creó.
En Nombre descriptivo del certificado, asigne un nombre al certificado en la aplicación.
Seleccione Validar. Una vez que la validación se haya realizado correctamente, seleccione Agregar.
Una vez finalizada la operación, el certificado aparece en la lista Traiga sus propios certificados (.pfx).
Para ayudar a proteger un dominio personalizado con este certificado, debe crear un enlace de certificado. Siga los pasos descritos en Protección de un nombre DNS personalizado con un enlace TLS/SSL en Azure App Service.
Importación de un certificado de Key Vault
Si usa Key Vault para administrar los certificados, puede importar un certificado PKCS12 en App Service desde Key Vault si cumple los requisitos.
Autorización a App Service para leer desde el almacén
De forma predeterminada, el proveedor de recursos de App Service no tiene acceso al almacén de claves del usuario. A fin de usar un almacén de claves para una implementación de certificados, debe autorizar el acceso de lectura al almacén de claves para el proveedor de recursos (App Service). Puede conceder acceso con una directiva de acceso o un control de acceso basado en rol (RBAC).
Proveedor de recursos | Id. de la aplicación de la entidad de servicio o usuario asignado | Rol RBAC de Key Vault |
---|---|---|
Azure App Service o Microsoft.Azure.WebSites |
-
abfa0a7c-a6b6-4736-8310-5855508787cd para Azure Cloud Services - 6a02c803-dafd-4136-b4c3-5a6f318b4714 para los Servicios en la nube de Azure para el Gobierno |
Usuario de certificado |
El id. de la aplicación de la entidad de servicio o el valor del usuario asignado es el identificador del proveedor de recursos de App Service. Cuando se concede acceso mediante RBAC, el identificador de objeto correspondiente del identificador de aplicación de la entidad de servicio es específico del inquilino. Para obtener información sobre cómo autorizar permisos de Key Vault para el proveedor de recursos de App Service mediante una directiva de acceso, consulte Proporcionar acceso a claves, certificados y secretos de Key Vault con el control de acceso basado en rol de Azure.
az role assignment create --role "Key Vault Certificate User" --assignee "abfa0a7c-a6b6-4736-8310-5855508787cd" --scope "/subscriptions/{subscriptionid}/resourcegroups/{resource-group-name}/providers/Microsoft.KeyVault/vaults/{key-vault-name}"
Importación de un certificado desde el almacén a la aplicación
En el Portal de Azure, en el panel izquierdo, seleccione App Services><>.
En el panel izquierdo de la aplicación, seleccione Certificados>Traiga sus propios certificados (.pfx)>Agregar certificado.
En Origen, seleccione Importar desde Key Vault.
Elija Seleccionar certificado del almacén de claves.
Para ayudarle a seleccionar el certificado, use la tabla siguiente:
Configuración Descripción Suscripción La suscripción asociada al almacén de claves. Key Vault El almacén de claves que contiene el certificado que desea importar. Certificado En esta lista, seleccione un certificado PKCS12 que se encuentra en el almacén. Se enumeran todos los certificados PKCS12 del almacén con sus huellas digitales, pero no todos se admiten en App Service. Después de terminar con la selección, elija Seleccionar>validar y, a continuación, seleccione Agregar.
Una vez finalizada la operación, el certificado aparece en la lista Traiga sus propios certificados (.pfx). Si se produce un error en la importación, indica que el certificado no cumple los requisitos para App Service.
Si actualiza el certificado en Key Vault con un nuevo certificado, App Service sincronizará automáticamente el certificado en un plazo de 24 horas.
Para ayudar a proteger un dominio personalizado con este certificado, debe crear un enlace de certificado. Siga los pasos descritos en Protección de un nombre DNS personalizado con un enlace TLS/SSL en Azure App Service.
Carga de un certificado privado
Después de obtener un certificado del proveedor, prepare el certificado para App Service siguiendo los pasos descritos en esta sección.
Combinación de certificados intermedios
Si la entidad de certificación proporciona varios certificados en la cadena de certificados, debe combinar los certificados siguiendo el mismo orden.
En un editor de texto, abra cada certificado recibido.
Para almacenar el certificado combinado, cree un archivo denominado mergedcertificate.crt.
Copie el contenido de cada certificado en este archivo. Asegúrese de seguir la secuencia de certificados especificada por la cadena de certificados. Comience con el certificado y termine con el certificado raíz, por ejemplo:
-----BEGIN CERTIFICATE----- <your entire Base64 encoded SSL certificate> -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- <The entire Base64 encoded intermediate certificate 1> -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- <The entire Base64 encoded intermediate certificate 2> -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- <The entire Base64 encoded root certificate> -----END CERTIFICATE-----
Exportación del certificado privado combinado a .pfx
Ahora, exporte el certificado TLS/SSL combinado con la clave privada que se usó para generar la solicitud de certificado. Si generó la solicitud de certificado mediante OpenSSL, creó un archivo de clave privada.
OpenSSL v3 cambió el cifrado predeterminado de 3DES a AES256. Use la línea -keypbe PBE-SHA1-3DES -certpbe PBE-SHA1-3DES -macalg SHA1
de comandos para invalidar el cambio.
OpenSSL v1 usa 3DES como valor predeterminado, por lo que los archivos .pfx que se generan se admiten sin modificaciones especiales.
Para exportar el certificado a un archivo .pfx, ejecute el siguiente comando. Reemplace los marcadores de posición <private-key-file> y <merged-certificate-file> por la ruta a la clave privada y al archivo de certificado combinado.
openssl pkcs12 -export -out myserver.pfx -inkey <private-key-file> -in <merged-certificate-file>
Cuando se le solicite, especifique una contraseña para la operación de exportación. Al cargar el certificado TLS/SSL en App Service más adelante, tendrá que proporcionar esta contraseña.
Si usó IIS o Certreq.exe para generar la solicitud de certificado, instale el certificado en el equipo local y, a continuación, exporte el certificado a un archivo .pfx.
Carga del certificado en App Service
Ya está listo para cargar el certificado en App Service.
En el Portal de Azure, en el panel izquierdo, seleccione App Services><>.
En el panel izquierdo de la aplicación, seleccione Certificados>Traiga sus propios certificados (.pfx)>Cargar certificado (.pfx).
Para ayudarle a cargar el certificado .pfx, use la tabla siguiente:
Configuración Descripción Archivo de certificado PFX Seleccione el archivo .pfx. Contraseña del certificado Escriba la contraseña que creó al exportar el archivo .pfx. Nombre amigable del certificado Nombre del certificado que aparece en la aplicación web. Después de terminar con la selección, elija Seleccionar>validar y, a continuación, seleccione Agregar.
Una vez finalizada la operación, el certificado aparece en la lista Traiga sus propios certificados (.pfx).
Para proporcionar seguridad para un dominio personalizado con este certificado, debe crear un enlace de certificado. Siga los pasos descritos en Protección de un nombre DNS personalizado con un enlace TLS/SSL en Azure App Service.
Carga de un certificado público
Se admiten certificados públicos en el formato .cer.
Después de cargar un certificado público en una aplicación, solo es accesible por la aplicación a la que se carga. Los certificados públicos deben cargarse en cada aplicación web individual que necesite acceso. Para escenarios específicos de App Service Environment, consulte la documentación de certificados y App Service Environment.
Puede cargar hasta 1000 certificados públicos por plan de App Service.
En el Portal de Azure, en el panel izquierdo, seleccione App Services><>.
En el panel izquierdo de la aplicación, seleccione Certificados> certificadosde clave pública (.cer)>Agregar certificado.
Para ayudarle a cargar el certificado .cer, use la tabla siguiente:
Configuración Descripción Archivo de certificado .cer Seleccione su archivo .cer. Nombre amigable del certificado Nombre del certificado que aparece en la aplicación web. Después de finalizar, seleccione Agregar.
Después de cargar el certificado, copie la huella digital del certificado y después revise Asegurarse de que el certificado sea accesible.
Renovación de un certificado que va a expirar
Antes de que expire un certificado, asegúrese de agregar el certificado renovado a App Service. Actualice los enlaces de certificado en los que el proceso depende del tipo de certificado. Por ejemplo, un certificado importado de Key Vault, incluido un certificado de App Service, se sincroniza automáticamente con App Service cada 24 horas y actualiza el enlace TLS/SSL cuando se renueva el certificado.
Para un certificado cargado, no hay ninguna actualización de enlace automática. En función del escenario, revise la sección correspondiente:
- Renovación de un certificado cargado
- Renovación de un certificado de App Service
- Renovación de un certificado importado desde Key Vault
Renovación de un certificado cargado
Al reemplazar un certificado que va a expirar, la forma de actualizar el enlace del certificado con el nuevo certificado podría afectar negativamente a la experiencia del usuario. Por ejemplo, la dirección IP de entrada podría cambiar al eliminar un enlace, incluso si ese enlace está basado en IP. Este resultado es especialmente eficaz cuando se renueva un certificado que ya está en un enlace basado en IP.
Para evitar un cambio en la dirección IP de la aplicación y evitar el tiempo de inactividad de la aplicación debido a errores HTTPS, siga estos pasos:
Vaya a la página Dominios personalizados de la aplicación, seleccione el botón ... y, luego, seleccione Actualizar enlace.
Seleccione el nuevo certificado y, a continuación, seleccione Actualizar.
Elimine el certificado existente.
Renovación de un certificado importado desde Key Vault
Para renovar un certificado de App Service, consulte Renovación de un certificado de App Service.
Para renovar un certificado que importó en App Service desde Key Vault, consulte Renovación del certificado de Azure Key Vault.
Después de renovar el certificado en el almacén de claves, App Service sincronizará automáticamente el nuevo certificado y actualizará cualquier enlace de certificado aplicable en un plazo de 24 horas. Para llevar a cabo la sincronización manual, siga estos pasos:
Vaya a la página Certificado de la aplicación.
En Aportación de sus propios certificados (.pfx), seleccione el botón ... para el certificado de Key Vault importado y, luego, Sincronizar.
Preguntas más frecuentes
¿Cómo puedo automatizar el proceso de agregar un certificado bring-your-own a una aplicación?
- CLI de Azure: enlace de un certificado TLS/SSL personalizado a una aplicación web
- Azure PowerShell: Enlace de un certificado TLS/SSL personalizado a una aplicación web mediante PowerShell
¿Puedo usar un certificado de entidad de certificación privada para TLS entrante en mi aplicación?
Puede usar un certificado de entidad de certificación (CA) privada para TLS entrante en App Service Environment versión 3. Esta acción no es posible en App Service (multiinquilino). Para más información sobre el multiinquilino de App Service frente a un solo inquilino, consulte Comparación multiinquilino público de App Service v3 y App Service.
¿Puedo realizar llamadas salientes mediante un certificado de cliente de entidad de certificación privada desde mi aplicación?
Solo se admite esta funcionalidad para aplicaciones de contenedor de Windows en el servicio de aplicaciones multiinquilino. Puede realizar llamadas salientes utilizando un certificado de cliente CA privado con aplicaciones basadas en código y en contenedores en App Service Environment versión 3. Para más información sobre el multiinquilino de App Service frente a un solo inquilino, consulte Comparación multiinquilino público de App Service v3 y App Service.
¿Es posible cargar un certificado CA privado en mi almacén raíz de confianza de App Service?
Puede cargar su propio certificado de entidad de certificación en el almacén raíz de confianza en App Service Environment versión 3. No se puede modificar la lista de certificados raíz de confianza en App Service (multitenencia). Para más información sobre el multiinquilino de App Service frente a un solo inquilino, consulte Comparación multiinquilino público de App Service v3 y App Service.
¿Se pueden usar certificados de App Service para otros servicios?
Sí. Puede exportar y usar certificados de App Service con Azure Application Gateway u otros servicios. Para más información, consulte el artículo de blog Creación de una copia PFX local de App Service Certificate.