Actualizar reglas del firewall de SQL Azure desde Powershell

Para acceder a determinados servicios de Azure, como puede ser una Base datos  Azure SQL es necesario que la ip remota  esté englobada dentro de los rangos permitidos por el firewall de la  suscripción . En ocasiones, encontramos la problemática de querer acceder desde una IP dinámica lo que implica cambiar continuamente las reglas establecidas en el firewall para esa IP.  Así pues, esta semana voy a hablar sobre cómo actualizar de forma automática  las reglas que tenemos creadas en el Firewall de Azure por medio de un script en PowerShell.

Autenticación en Azure

La forma en la que nos vamos a autenticar a través de PowerShell será gracias al fichero PublishSettings. Se trata de un archivo en formato XML que podemos descargar desde nuestra cuenta de Azure  y que contiene información relativa a la suscripción así como un certificado asociado.  Para descargar el fichero PublishSettings únicamente tenemos que ejecutar desde PowerShell el siguiente comando:

Este comando automatiza la apertura de la web de descarga del fichero. Nos logamos en el explorador web con una cuenta que tenga permisos sobre la suscripción, descargamos el archivo y a continuación lo importamos:

001-mod

Una vez realizado esto, tendremos instalado un certificado el cual podremos emplear para conectarnos a Azure, dicho certificado se guarda automáticamente en el almacén personal del usuario. Una vez empleado el fichero publishSettings  por motivos de seguridad es conveniente eliminarlo.

Script de actualización

Realizados los pasos  anteriores podremos automatizar el proceso de actualización de la IP en el firewall. Partimos de la situación  y el script realizados por Carlos Milán en un post anterior, que completaremos añadiendo nuestro código a continuación . Empleamos la IP obtenida por la resolución DNS como dato a añadir en el firewall. Los pasos serían los siguientes:

  1. Establecemos la suscripción sobre la que nos conectaremos por medio del certificado.
  2. Obtenemos los servidores de esa suscripción.
  3. Por cada servidor obtenemos las reglas que hay en cada uno y lo comparamos con el nombre de la regla de Sevilla.
  4. Si el valor no es nulo y la IP que tenemos es diferente cambiamos el rango de IP.
El script tendría la siguiente forma.

Y hasta aquí el tema de hoy¡Nos vemos en el próximo post!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *