Kirk Evans Blog

.NET From a Markup Perspective

Using Azure KeyVault to Store Secrets

I have deleted the contents of this post as it demonstrated how to use clientID and clientSecret to obtain an AzureAD access token to Key Vault. This is not the correct guidance, your solution should leverage the Managed Service Identity feature of Azure AD or use certificates to authenticate to Azure AD in order to… Read more

A Proud Day to be a Dad

Thirteen years ago, I wrote about an amazing day that I had as a new father (A Great Day to be a Dad).  Today, I had another one of those days.  I don’t often share personal stuff via my blog, but this one is one to remember.  My son, Carson, picked up guitar this summer. … Read more

Using PowerShell With Certificates

This post will demonstrate using PowerShell cmdlets to create, read, and delete certificates.  Spoiler alert: it’s dead simple. Background I was working through the example Authenticating to Azure AD in daemon apps with certificates and I saw this: makecert -r -pe -n “CN=TodoListDaemonWithCert” -ss My -len 2048 TodoListDaemonWithCert.cer -sv TodoListDaemonPrivateKey.pvk Easy to read, right?  I… Read more

Blynclight for Developers–Daddy is Working Light

This post will show you how to code a custom Visual Studio VSIX add-in that will control a USB light, turning the light the color of your choice when Visual Studio is in the foreground or actively debugging.  The code is available for download at  Background A few years ago, Andrew Connell and Scott… Read more

Connecting Virtual Networks in ARM Templates

This post will demonstrate creating two virtual networks, gateways for each, and connecting them together using an ARM template. Background I am working on a project that requires two Azure virtual networks to connect together.  I have done this so many times, typically through CLI scripts or PowerShell, but didn’t find the time to create… Read more

Azure Web App Client Certificate Authentication with ASP.NET Core

This post will walk through securing an ASP.NET Core application deployed to an Azure Web App that is secured using client certificates. The code is available for download at ClientCertDemo.  Background Many customers have implemented client certificates for older web applications and are looking at Azure Web Apps to move their code.  A common question… Read more

New Beginnings–Moving to AzureCAT

I am excited to share the news that I am moving on from my current role as Chief Architect of the GSI Azure COE team and will become a Principal Program Manager on the AzureCAT team! Azure COE For the past few years I have been part of a group called Azure Center of Excellence… Read more

Deploy bacpac With Active Geo Replication

This post will show you how to use an ARM template to deploy a data application as a .bacpac file and to enable active geo replication to a second region.  This is a follow-on from the previous post, Deploy bacpac to Azure SQL Database Using ARM.  Background As our team has traveled around the world… Read more

Deploy bacpac to Azure SQL Database Using ARM

This post will show you how to deploy a .bacpac file to an Azure SQL Database using an Azure Resource Manager Template. Background The way I develop most solutions is to build resources locally on my machine, debug them locally, then deploy to Azure.  That means I create web applications and databases locally.  I wanted… Read more