Powershell for Azure

cloud

If you’re like me, and need to get the Azure module installed on your Windows 10 machine, you may come across some interesting gotchas on  new builds that I thought this post could help with. The below worked for me but could differ depending on your install.

to add the module, in Powershell it’s as easy as

install-module azurerm

if you’re on a new build though you may need to do a  few preliminary steps.  if you get a message about requiring NuGet then you know what I mean. in some cases like if you have FIPS enabled, this can cause other errors.  basically run through these commands to get it going.

check the current providers with

get-packageprovider -listavailable

and you’ll likely get something like this

PowershellGet 1.0.0.0.1 cant handle FIPS so the easiest thing to do is upgrade that

use

iwr  https://www.powershellgallery.com/api/v2/package/PackageManagement/1.1.1.0 -Outfile .\packagemanagement.1.1.1.0.nupkg
iwr https://dist.nuget.org/win-x86-commandline/latest/nuget.exe -Outfile .\nuget.exe

C:\Windows\System32\WindowsPowerShell\v1.0\Modules
$module_dir="C:\Windows\System32\WindowsPowerShell\v1.0\Modules\"

./nuget.exe install PackageManagement -Source $pwd `
  -OutputDirectory $module_dir `
  -Verbosity detailed

may get warnings about dlls not available.
Rename-Item $module_dir/PackageManagement.1.1.1.0 $module_dir/PackageManagement

Quick Powershell commands to change proxy settings

I need to do a lot more posting on the site.  I figured, it might not be so good for the site’s google juice, but a few more quick tips to help out people in need is the best way to get back into things. that was the original purpose of the site anyway. The deets on how to do and then maybe the fluff and explanation after.

So, changing proxy settings via powershell real quick. You just need to change the details of the proxy and port below.

$settings = Get-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings"
$settings.ProxyServer
$settings.ProxyEnable

That will show what the current setting is.  If you have a proxy set it should show what it is and the value 1.  Even if you see a proxy server, if the enable is 0, it wont use it.

Now to configure a proxy server and enable it:

$reg = "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings"
Set-ItemProperty -Path $reg -Name ProxyServer -Value "proxy.domain.org:8080"
Set-ItemProperty -Path $reg -Name ProxyEnable -Value 1

Where does this one come in handy? it’s a really quick way to change proxy if you are testing a bunch of stuff.  Mainly though,  I use it if I’m running powershell under a different account to the one I’m logged in as and don’t want to log out and in as that account, change the proxy and then probably have to log out again and back in as the original user because there’s something under that login I need.