#azureautomation
Explore tagged Tumblr posts
azuretrainingsin · 3 months ago
Text
Tumblr media
Master Azure Management with These Essential Tools!
.
.
Managing your cloud infrastructure effectively is key to success in the Azure ecosystem!
With Azure Management Tools, you can streamline operations, automate tasks, and monitor resources effortlessly.
Want to become an Azure expert?
Join Azure Trainings and learn how to effectively manage and optimize your cloud infrastructure!
Call us now: +91 9882498844
Visit: www.azuretrainings.in
0 notes
ibarrau · 5 years ago
Text
[AzureScript][T1:E4] ¡Enmascarando contraseñas!
¡Hola! Ésta será la última parte de esta serie, por si no recordas bien o queres repasar las anteriores, acá están los links:
T1:E1 - Introducción
T1:E2 - Usos Básicos
T1:E3 - Login Automático
Haciendo un breve repaso de la serie, básicamente hemos visto las librerías básicas para interactuar con Azure utilizando PowerShell. Vimos ejemplos de éstas interacciones y la forma de automatizar 100% nuestros scripts para que no requieran interacción alguna con el usuario.
En esta última parte de la serie, vamos a abordar un tema que quedó pendiente en la anterior: no exponer nuestras credenciales a simple vista en el Script. Imagínense lo poco seguro que sería tener la contraseña a simple vista en nuestro script, algo como  $password = "martin123" probablemente nos llevaría (con suerte) a un reto en una inspección de auditoria. Incluso si somos cuidadosos con el script, nos restringe la posibilidad de compartirlo para mostrar la lógica, o subirlo a un repositorio público de github para compartir conocimiento. Por esta razón, el broche de oro de esta serie tendrá foco en formas comunes de evitar exponer nuestras credenciales. Para esto veremos 2 formas, cada una con sus ventajas y desventajas.
Una particularidad de esta entrada en el blog, es que finalmente me mude definitivamente a Linux. Por lo que verán que las rutas a los archivos no comienzan con C:/ como en windows, pero a los fines prácticos es lo mismo. También mencionaré que para esta oportunidad estaré usando el módulo Az para comunicarme con Azure, en lugar de AzureRM como venia haciéndolo en entregas anteriores (ya expliqué sus diferencias, y como llevar los comandos de uno a otro de forma simple).
Primera forma
Ésta es la mas obvia quizás, la primera que se nos ocurriría: guardar la contraseña en un archivo separado y encriptado. Por suerte, esto es sencillo de hacer con PowerShell. Primero deberíamos abrir una nueva consola y crear este archivo, para luego llamarlo desde nuestro script. Abrimos PowerShell y tipeamos:
$mypass = "martin123" | ConvertTo-SecureString -AsPlainText -Force $mypass = Read-Host -AsSecureString $mypass | ConvertFrom-SecureString | Set-Content "/home/martin/python/Investigacion/Powershell/creds.txt"
¿Que hemos hecho acá? En la primera linea simplemente creamos un objeto de powershell conocido como SecureString, que básicamente almacena una variable tipo string encriptada y no puede ser leída fácilmente. En la segunda linea simplemente almacenamos el contenido de esta variable en el archivo creds.txt. Esto lo haríamos por única vez, y no estaría incluido en el script final. Es, simplemente, para generar el archivo. Si abrimos este archivo de texto, no veremos la contraseña sino una cadena de caracteres encriptados que no nos permitirán saber la contraseña original, en mi caso decía algo así: 
6d0061007200740069006e00310032003300.
Luego, para tomar el contenido del archivo simplemente ejecutamos. Esto SI estaría en nuestro script final:
$mypass = Get-Content "/home/martin/python/Investigacion/Powershell/creds.txt" | ConvertTo-SecureString
De este modo, habremos tomado el contenido encriptado del archivo, y lo almacenamos en una variable de powershell en un objeto tipo SecureString que podemos utilizar como nuestra contraseña al crear el objeto PSCredential (explicado en la parte 3 de esta serie).
Podríamos llevar esto un paso mas avanzado en la seguridad, teniendo una clave propia para desencriptar la password en otro archivo separado, con la desventaja de que esto nos lleva a tener 2 archivos ademas del script, pero con la ventaja de que nosotros manejamos la clave de encriptacion con SHA-256. Veamos como hacerlo.
El primer paso sera crear el archivo con la llave de encriptacion (recuerden cambiar la ruta de archivo):
$Key = New-Object Byte[] 32 [Security.Cryptography.RNGCryptoServiceProvider]::Create().GetBytes($Key) $Key | out-file /home/martin/python/Investigacion/Powershell/key.key
De este modo habremos creado un archivo con la clave de encriptacion que usaremos para encriptar nuestra password en el archivo creds.txt. Ahora, volvamos a generar creds.txt:
$mypass = Read-Host -AsSecureString $mypass | ConvertFrom-SecureString -Key (Get-Content /home/martin/python/Investigacion/Powershell/key.key) | Set-Content "/home/martin/python/Investigacion/Powershell/creds.txt"
Así, creamos un archivo que tendrá nuestra password encriptada según la clave que creamos previamente. Para recuperar esta contraseña, usamos:
$password = Get-Content "/home/martin/python/Investigacion/Powershell/creds.txt" | ConvertTo-SecureString -Key (Get-Content "/home/martin/python/Investigacion/Powershell/key.key")
¡Listo! De este modo, no alcanza solo con tener el archivo con la contraseña encriptada, sino que también tendremos que utilizar el archivo .key para poder desencriptar el primer archivo, y crear satisfactoriamente el objeto SecureString (el cual tampoco nos mostrara la contraseña en texto plano).
Segunda forma
Otra manera de no exponer nuestras contraseñas, seria mediante el uso de un servicio de Azure llamado KeyVault. En este servicio podemos almacenar claves, y recuperarlas de un modo seguro, pudiendo acceder a ellas solo quienes estén autorizados en Azure para hacerlo. Para esto, primero logueamos en Azure y creamos un recurso KeyVault (cambia el nombre del grupo de recursos según lo que tengas creado en tu suscripción):
Login-AzAccount New-AzKeyVault -Name 'LaDataKeys' -ResourceGroupName 'Wasteland' -Location 'East US'
Después, generamos el objeto SecureString y lo agregamos como un secreto:
$mypass = Read-Host -AsSecureString Set-AzKeyVaultSecret -VaultName 'LaDataKeys' -Name 'TutorialPassword' -SecretValue $mypass
Para recuperar el objeto SecureString, usamos:
$password = (Get-AzKeyVaultSecret -vaultName "LaDataKeys" -name "TutorialPassword").SecretValue
¡Listo! Mucho más fácil ¿verdad? Es que ese es el objetivo y uno de los principales beneficios de los servicios cloud. Simplificarnos la vida. En este caso mediante la protección de nuestras claves en un llavero.
Por supuesto que necesitaremos darle permisos a nuestro Service Principal sobre el KeyVault que acabamos de crear, de otro modo ¡no podrá acceder al secreto! Para cualquier trabajo que tenga que quedar productivo, recomiendo mezclar ambos métodos y nunca mostrar en texto plano el SecretId, menos ahora que sabemos encriptarlo con SHA-256 ;)
Con esto cierro este ciclo de PowerShell con Azure, espero les haya sido de utilidad, ¡sigan leyendo y aprendiendo contenido en LaDataWeb!
Escrito por Martin Zurita
0 notes
dockintranetportal · 8 years ago
Photo
Tumblr media
Managing Azure Automation Module Assets Using MyGet http://buff.ly/2m20a9r #AzureAutomation via ‏SwissSharePoint News
0 notes
jobsine · 4 years ago
Text
Senior Machine Learning Engineer Job For 4-7 Year Exp In Microsoft Bengaluru / Bangalore, India - 2658578
Senior Machine Learning Engineer Job For 4-7 Year Exp In Microsoft Bengaluru / Bangalore, India – 2658578
Senior Machine Learning Engineer Job For 4-7 Year Exp In Microsoft Bengaluru / Bangalore, India – 2658578 Job Description :The AzureAutomated ML (AutoML) team– is hiring for an experienced Deep Learning Engineerto work on algorithms for Computer Vision.Do you want to build the AI that builds AIAs the world has truly embraced a period of ‘pervasive intelligence’, products and services are…
View On WordPress
0 notes
tomwechsler · 5 years ago
Video
youtube
Azure Tip: Update Management, Change Tracking und Inventory bei einer VM...
0 notes
suwa-sh · 6 years ago
Text
AzureAutomationでPowerShellを実行 Runbookでスケジュール指定 ・メリット コスト削減できた 仕組み化でセール時も同様 ・デメリット ビジネスクリティカルだとスケール変更で30min スケール変更時に 10秒くらい切断 スケールダウンでメモリもダウン、キャッシュが効かないことも #dmm_zozo勉強会
AzureAutomationでPowerShellを実行 Runbookでスケジュール指定 ・メリット コスト削減できた 仕組み化でセール時も同様 ・デメリット ビジネスクリティカルだとスケール変更で30min スケール変更時に 10秒くらい切断 スケールダウンでメモリもダウン、キャッシュが効かないことも#dmm_zozo勉強会
— 諏訪真一 (@suwa_sh) May 23, 2019
via Twitter https://twitter.com/suwa_sh May 23, 2019 at 09:11PM
0 notes
clemensv · 7 years ago
Link
Azure Lock: Subscription owners can lock a subscription, resource group, or resource to prevent other users from accidentally deleting or modifying critical resources. https://t.co/wiiCdzDIQI #AzureLock #Azure #Governance #cloudSecurity #securityAdmin #AzureAutomation
— John Joyner (@john_joyner) October 19, 2018
0 notes
pavel-nosok · 8 months ago
Text
Researchers Backdoored Azure Automation Account Packages And Runtime Environments
Runtime environments offer a flexible way to customize Automation Account Runbooks with specific packages. While base system-generated environments can’t be directly modified, they can be indirectly changed by adding packages to the old experience and then switching to the new Runtime Environments feature.  It could potentially be exploited by attackers who create new runtime environments […] The…
0 notes
ibarrau · 6 years ago
Text
[AzureScript][T1:E1] Introducción
Introducción
Comencemos esta serie de artículos de manejo de azure con scripts de powershell. El punto inicial por comentar es: ¿para que quiero manejar Azure desde un script si tengo el portal que es más amigable?
Con Azure PowerShell se combinan la velocidad de una herramienta de consola, la flexibilidad de un lenguaje de scripting, y el poder de una interfaz de administrador (mientras tengas los permisos, claro).
Podes programar tareas rutinarias (es mas fácil y rápido ejecutar un script que haga lo que queres, que hacerlo desde el portal). ¡Pensalo una vez! Después solo ejecutalo y ¡listo!
Así como en Windows podes hacer con PowerShell todo (incluso más) lo que se puede hacer mediante la interfaz gráfica, con las librerías de Azure podes hacer todo lo que puedas hacer desde el portal.
¡Integración con Azure Automation para ejecutar scripts as a service! Con schedules configurables y súper versátiles (haré un post dedicado a esto).
Puede usarse para ejecutar tareas sencillas (prender algún recurso, escalar una base de datos, etc) y también para tareas más complejas (ejecución de procesos ETL, deploy de recursos, asignación de permisos, etc).
Con algo de suerte, ya te convencí de que es importante al menos tener una idea de que esto existe, que puede facilitarte el trabajo y que no es muy difícil ni lleva mucho tiempo, sobretodo considerando el tiempo que ahorras automatizando tareas aburridas y repetitivas.
Ahora en cuanto a las versiones, ¿cual usar? Si googlean un poco, verán que hay varios nombres de librerías y puede resultar un poco confuso al principio, a continuación un resumen:
CLI: Azure CLI (por Command Line Interface) es una herramienta 100% cross platform, que tiene la ventaja de que su sintaxis es identica para cualquier sistema operativo. Un script que use Azure CLI puede ejecutarse tanto en PowerShell como en Bash, y funcionara exactamente de la misma manera. No es sobre lo que estaré hablando en los próximos posts, pero sin dudas es una opción a tener en cuenta!! https://docs.microsoft.com/en-us/cli/azure/install-azure-cli?view=azure-cli-latest
Azure PowerShell: estas son las librerías hechas específicamente para PowerShell, usa el formato de cmdlets (quienes sepan algo de PowerShell entenderán) y también son cross platform gracias a la existencia y compatibilidad con PowerShell Core! PowerShell Core esta disponible tanto para Windows, Linux o para Mac: https://docs.microsoft.com/en-us/powershell/scripting/install/installing-powershell?view=powershell-6. Hay 2 versiones de estas librerías:
AzureRM: RM se refiere a Resource Manager. Esta versión es la "vieja" de las librerías de Azure PowerShell, pero es la que mas funcionalidades tiene y viene por defecto instalada en Azure Automation. En esta serie de blogs estaré usando esta versión por ser la mas madura.
Az: Esta es la nueva versión que esta desarrollando Microsoft, que intenta reemplazar completamente a AzureRM. Sin embargo, al día de hoy hay funcionalidades que aun no posee. De todos modos los cmdlets son prácticamente los mismos que los que veremos en adelante, solo hay que reemplazar "AzureRM" por "Az". Por ejemplo, al loguear en Azure usamos "Login-AzAccount" en lugar de "Login-AzureRMAccount".
Listos?? A instalar!!
Para finalizar este post introductorio, vamos a instalar las librerías de Azure PowerShell. Primero, debemos abrir una terminal de PowerShell con permisos de administrador (no es 100% necesario, pero facilita las cosas). Segundo, un checkeo de compatibilidad. Escribe:
$PSVersionTable.PSVersion
El resultado debería ser 5.1.0 o mas! Si no es así, actualiza tu versión de PowerShell. https://docs.microsoft.com/en-us/powershell/scripting/install/installing-windows-powershell?view=powershell-6#upgrading-existing-windows-powershell
Tercero, instalamos las librerías. Escribe:
Install-Module AzureRM
Luego de escribirlo, nos pedirá una confirmación a la que respondemos Y (o S, según el idioma del sistema operativo que tengamos).
Por último, probemos hacer un login! Escribe:
Login-AzureRMAccount
Esto debería abrir un ventana para que puedas loguear de forma gráfica en Azure. Hay otras formas 100% como comando. ¡Las veremos más adelante!
¡Listo! Espero haberles despertado interés sobre el tema, próximamente estaré escribiendo sobre la forma de realizar diferentes tareas con esta versátil herramienta.
Escrito por Martin Zurita.
Capítulo Siguiente
0 notes
azureautomation · 9 years ago
Text
Azure SQL Database Content Synchronisation to Downstream Environments
Data Flow ====> Production –> Staging –> Integration –> Test –> Dev
I have been working with various clients with different kind of requirements for each one of them. Thinking about it all of them lead to one common purpose. What is that? We develop applications and write automated tests to validate them on regular basis or on each release and even on nightly to run wide range of tests. One of the…
View On WordPress
0 notes
stefanstranger · 5 years ago
Text
RT @StanZhelyazkov: Looking for a weekend read? Check out our preview chapter about automation. Full Inside Azure Management book coming soon for free https://t.co/e8KqVybM7f #Azure #AzureMonitor #AzureAutomation #AzureFunctions #PowerShell #AzureManagement #AzureGovernance
Looking for a weekend read? Check out our preview chapter about automation. Full Inside Azure Management book coming soon for free https://t.co/e8KqVybM7f #Azure #AzureMonitor #AzureAutomation #AzureFunctions #PowerShell #AzureManagement #AzureGovernance
— Stanislav Zhelyazkov (@StanZhelyazkov) April 4, 2020
from Twitter https://twitter.com/sstranger April 04, 2020 at 12:01PM via IFTTT
0 notes
stefanstranger · 5 years ago
Text
Favorite tweets
Looking for a weekend read? Check out our preview chapter about automation. Full Inside Azure Management book coming soon for free https://t.co/e8KqVybM7f #Azure #AzureMonitor #AzureAutomation #AzureFunctions #PowerShell #AzureManagement #AzureGovernance
— Stanislav Zhelyazkov (@StanZhelyazkov) April 4, 2020
from http://twitter.com/StanZhelyazkov via IFTTT
0 notes
stefanstranger · 7 years ago
Text
RT @john_joyner: Azure Lock: Subscription owners can lock a subscription, resource group, or resource to prevent other users from accidentally deleting or modifying critical resources. https://t.co/wiiCdzDIQI #AzureLock #Azure #Governance #cloudSecurity #securityAdmin #AzureAutomation
Azure Lock: Subscription owners can lock a subscription, resource group, or resource to prevent other users from accidentally deleting or modifying critical resources. https://t.co/wiiCdzDIQI #AzureLock #Azure #Governance #cloudSecurity #securityAdmin #AzureAutomation
— John Joyner (@john_joyner) October 19, 2018
from Twitter https://twitter.com/sstranger October 20, 2018 at 01:10PM via IFTTT
0 notes
stefanstranger · 7 years ago
Text
RT @AzureAutomation: A new version of the Automation cmdlets is in preview. This includes modules for the SourceControl and UpdateManagement features. https://t.co/l7DHyIkyMJ
A new version of the Automation cmdlets is in preview. This includes modules for the SourceControl and UpdateManagement features. https://t.co/l7DHyIkyMJ
— Azure Automation (@AzureAutomation) September 27, 2018
from Twitter https://twitter.com/sstranger September 28, 2018 at 06:59AM via IFTTT
0 notes
stefanstranger · 7 years ago
Text
RT @dscottraynsford: Managing the state of Windows VMs in Azure just got a whole lot easier with the new @AzureAutomation State Configuration experience. It is now a whole lot easier to get started using DSC in Azure and get some Config as Code and self-healing VMs. #PSDSC https://t.co/1fG4gkBFNo
Managing the state of Windows VMs in Azure just got a whole lot easier with the new @AzureAutomation State Configuration experience. It is now a whole lot easier to get started using DSC in Azure and get some Config as Code and self-healing VMs. #PSDSC https://t.co/1fG4gkBFNo
— Dan Scott-Raynsford (@dscottraynsford) September 12, 2018
from Twitter https://twitter.com/sstranger September 12, 2018 at 03:24PM via IFTTT
0 notes
stefanstranger · 7 years ago
Text
RT @azurefriday: Automate @Azure with @AzureAutomation - Jenny Hunter is on #AzureFriday with @shanselman @ch9 #AzureAutomation https://t.co/h4EJyeOSIq https://t.co/Cd65Ym8kHl
Automate @Azure with @AzureAutomation - Jenny Hunter is on #AzureFriday with @shanselman @ch9 #AzureAutomation https://t.co/h4EJyeOSIq pic.twitter.com/Cd65Ym8kHl
— Azure Friday ☁️ (@azurefriday) August 30, 2018
from Twitter https://twitter.com/sstranger August 31, 2018 at 09:38AM via IFTTT
0 notes