Web security

Azure App Service | Añadir certificado SSL de forma gratuita

Cuando creamos una aplicación o un sitio web es necesario que le instalemos un certificado SSL para permitir una comunicación segura entre los usuarios que accedan y el servidor. Además, hacerlo generará confianza en los usuarios evitando que los navegadores les muestren un mensaje indicando que nuestro sitio web es inseguro y, los buscadores le otorgarán un mejor posicionamiento premiando así la seguridad. Si desplegamos nuestro sitio web en Azure App Service, es posible crear y añadir este certificado de forma sencilla y gratuita usando los Certificados administrados para App Service.

Continue reading…

Azure Functions | Administrar el nivel de Log con ILogger

Cuando desarrollamos una Azure Function y la depuramos en local, poco se puede ver en la consola que se levanta y nos muestra la traza dada la cantidad y la velocidad con la que se muestra la información. Gracias al archivo de configuración de la function «host.json» podemos gestionar el nivel de logging que deseamos mostrar y así poder ver nuestros propios mensajes.

Continue reading…

Azure Durable Functions | Suborquestaciones

Azure Durable Functions es una gran extensión de las Azure Functions que nos permite generar «recetas» o definir procesos que involucren diferentes Azure Functions para llevar a cabo una tarea cuyo resultado conjunto no pueda ser resuelto por una de ellas debido a su complejidad. De esta forma, una Durable Function comienza con un «Orquestador» que definirá las reglas o el flujo que deben seguir en la actuación de las diferentes Azure Functions involucradas . Hasta aquí todo es relativamente sencillo pero, ¿qué ocurre cuando el proceso incluye a su vez subprocesos complejos? Es aquí donde aparecen las Suborquestaciones y os lo enseño en este artículo con código y en el vídeo incluído al final.

Continue reading…

Azure Functions | Aumentar el Timeout

Cuando desarrollamos Azure Functions, debemos asumir que estas no son infinitas salvo que usamos el Plan Premium, que las incluyamos dentro de nuestro App Service, o que las desarrollemos dentro de una orquestación de Azure Durable Functions. Por lo tanto, bajo esta premisa, existe un Timeout que define cuánto tiempo pueden permanecer en ejecución que, por defecto es de 5 minutos en el caso de un plan de consumo y de 30 minutos en el resto de casos.

Continue reading…

Tips & Tricks | Combinar dos listas sin duplicados con Linq

En muchas ocasiones es necesario combinar dos listas de elementos del mismo tipo de objeto sin tener la certeza de que puedan o no existir duplicados. Realizar esta combinación es, a priori, una tarea sencilla puesto que podemos resolverla usando un bucle y realizando todas las comprobaciones pertinentes pero, ¿es la forma más elegante y legible? Gracias a Linq podemos resolver esta tarea, y otras muchas, sin necesidad de escribir grandes cantidades de código y haciéndolo mucho más legible y mantenible.

Continue reading…

NetCoreConf Barcelona 2020

El pasado 18 de enero,  participé como ponente en uno de los eventos señalados del calendario, NetCoreConf de Barcelona y, como acostumbro últimamente, lo he hecho junto con mi gran amigo Diego Zapico. Este evento, el primero de la temporada 2020, ha contado con un plantel de lujo y ha puesto el nivel muy alto para los eventos que están por venir, incluidos el resto de NetCoreConf que se celebrarán en Valencia, Asturias y Madrid.

Continue reading…
React JS

React.JS | Cambiar el puerto 3000 que viene por defecto con la plantilla

Cuando creamos un proyecto de React.JS con la plantilla, por defecto se ejecutará en el puerto 3000, lo que hará que pueda darnos conflicto con otros proyectos que tengamos en ejecución si, como en mi caso, hacéis pruebas en proyectos paralelos mientras desarrolláis la aplicación principal. Entonces, ¿cómo lo cambiamos?

Continue reading…

Windows | Problemas con Windows Hello

Hace algún tiempo, con alguna actualización Insider de Windows, dejó de funcionarme la autenticación por reconocimiento facial, conocida como Windows Hello, con lo que últimamente no he podido disfrutar de la comodidad de que se desbloquee el equipo al sentarme delante de él. Al dejar de funcionarme intenté añadir un nuevo perfil por si el problema estaba en que no había suficientes para comparar pero, al intentarlo, recibí un error que decía “It looks like you’ve already setup Windows Hello on another account” y que me imposibilitaba no sólo añadir nuevos perfiles sino usar Windows Hello en sí.

Tras varias semanas de buscar soluciones inexistentes y tratar de probar todo tipo de cosas como quitar Windows Hello y el PIN, ejecutar comandos de powershell para resetear la configuración de las Apps de Windows, etc… al final encontré la solución en un foro de Microsoft donde un usuario ha compartido una guía de pasos que ha tomado y que le han servido Solución

Mi solución

En mi caso, me ha bastado con ejecutar el paso 3 “Browse to C:\Windows\System32\WinBioDatabase\ and delete all entries, I had two for two user accounts.” para que comenzara a funcionarme de nuevo Windows Hello.

Espero que os ayude.