Obfuscating Azure secrets while presenting or recording

If you've been presenting or recording presentations about Azure, you may have tried to hide keys, subscription IDs and other secrets from your audience.  It's not that easy, especially when these secrets move along the tiles in the Azure portal.  I finally found a couple of extensions to help obfuscate secrets while presenting to an audience or recording a video. 

Code obfuscation in Visual Studio
Viasfora is a free extension for Visual Studio 2012-2017 that offer a series of text editing improvements and one of them is the option to obfuscate code. Once installed, you open the Visual Studio Options menu and locate the Text Hiding section of the Viasfora settings.  Using a RegEx expression, Viasfora with look for a pattern in your code and hide that code.  I wanted to quickly add and remove the pattern so I came up with a RegEx expression that will look for this pattern: *_hidden*=.  This way, I can simply append any variable name with _hidden and voilà! Here's the expression: (?:_hidden\w*\s*=\s*")(.*)(?:")

Here's the code.  Notice the first two variables ends up with _hidden.

Selecting the View\Obfuscate Text menu will obfuscate the values.

However, you still need to be careful because if you hover the mouse on a variable, the value will be displayed in the tooltip.

Granted I could place these values in the config file or in a class that I won't show but none the less, this is a cool extension.

Text obfuscation in Chrome
Recording a video about an Azure service may expose some sensitive data like your subscription ID.  I once started blurring the ID in Camtasia but since the blades are moving horizontally, it was just impossible to do so I gave up until I saw Samir Bellouti presenting at the Global Azure Bootcamp.  All his secrets in the portal were hidden and he told me that he was using a Chrome extension.  I can't remember which one he was using exactly but I found Blur It Out in the Chrome Web Store.

Once installed, you simply click on the Blur It Out toolbar button and add the text you want to obfuscate (Note that I've blurred the ID using SnagIt in the next screenshot)

The text is now hidden in any page you browse.

Still, be careful because if you hover the mouse over the obfuscated text, it will be revealed!

That's it!  If you have some tricks to hide secrets while presenting, I'd be more than happy to hear from you.

Visual Studio Talk Show - Les nouveautés de Visual Studio 2017

Nous discutons avec Eric Moreau de quelques unes des nouveautés de Visual Studio 2017.

Eric est en consultant .Net. Il est aussi Visual Studio and Development Technologies MVP (Microsoft Most Valuable Professional). Eric peut être rejoint eric@moer.ca et son blog est disponible www.emoreau.com.


Visual Studio Talk Show - TypeScript

Nous discutons avec Mathieu Richard du langage TypeScript, un langage de programmation libre et open-source développé par Microsoft qui a pour but d'améliorer et de sécuriser la production de code JavaScript.

Développeur chez GSoft , Mathieu Richard est un passionné des nouvelles technologies et plus particulièrement, tout ce qui se rapporte au développement web.  Il est co-organisateur de la Communauté .NET de Montréal où il présente régulièrement sur divers sujets touchant le développement Web. Son implication est reconnu par Microsoft car il est récipiendaire de la reconnaissance MVP.  Sa passion et sa curiosité pour la programmation lui ont causés quelques nuits écourtées, mais lui donne le sentiment du devoir accompli. Toujours en attente de la prochaine coupe Stanley du Canadien... Vous pouvez le suivre sur twitter @matrichard5


Global Azure Bootcamp 2017 Montreal - Slide Deck

Here's the deck we used for the Global Azure Bootcamp 2017 Montreal that took place on Saturday, April 22, 2017.  We did an intro to Azure development and I presented how to use the Text Analytics API that is part of the Microsoft Cognitive Services APIs.  It was a full day of fun live coding.  The source code is available on GitHub


Easy data generation with Faker.Data

I was tasked to generate a million dummy customer records in CSV files to test the import process of a service that my client uses.  I wanted to add some randomness in the data and a quick search led me to Faker.Data, a simple C# library available on GitHub that generates all kind of fake data and it's super fast.  I was able to generate 3 CSV files with a million records each in less than 30 seconds on an ordinary laptop.  Here are a few examples of what Faker.Data can generate:

var state = Faker.Address.State();
var stateAbbr = Faker.Address.StateAbbreviation();
var provinceAbbr = Faker.Address.ProvinceAbbreviation();
var province = Faker.Address.Province();
var streetName = Faker.Address.StreetName();
var country = Faker.Address.Country();
var cityPrefix = Faker.Address.CityPrefix();
var citySuffix = Faker.Address.CitySuffix();
var secondaryAddress = Faker.Address.SecondaryAddress();
var usCity = Faker.Address.USCity();
var usCounty = Faker.Address.USCounty();
var canadianZip = Faker.Address.CanadianZip();
var usZip = Faker.Address.USZip();

var maleName = Faker.Name.MaleFirstName();
var femaleName = Faker.Name.FemaleFirstName();
var first = Faker.Name.FirstName();
var full = Faker.Name.FullName();
var last = Faker.Name.LastName();
var gender = Faker.Name.Gender();
var ethnicity = Faker.Name.Ethnicity();

//Geo Location
var lat = Faker.GeoLocation.Latitude();
var lon = Faker.GeoLocation.Longitude();

var rgb = Faker.Color.RGB();
var hex = Faker.Color.Hex();
var systemColor = Faker.Color.SystemColor();
var color = Faker.Color.ColorString();

var randomNumber = Faker.Number.RandomNumber();
var randomNumber1 = Faker.Number.RandomNumber(10);
var randomNumber2 = Faker.Number.RandomNumber(10,20);
var negativeNumber = Faker.Number.NegativeNumber(10);
var evenNumber = Faker.Number.Even(0,50);
var oddNumber = Faker.Number.Odd(0,50);
var doubleNumber = Faker.Number.Double();
var boolResult = Faker.Number.Bool();

var jpeg = Faker.Images.JPEG();
var bmp = Faker.Images.BMP();
var png = Faker.Images.PNG();

var host = Faker.Internet.Hosts();
var ipv4 = Faker.Internet.IPv4();
var ipv6 = Faker.Internet.IPv6();
var macAddress = Faker.Internet.Mac();
var localhost = Faker.Internet.LocalHost();
var protocol = Faker.Internet.Protocol();
var topDomainSuffix = Faker.Internet.TopDomainSuffix();
var topCountrySuffix = Faker.Internet.TopCountryDomainSuffix();
var domainSuffix = Faker.Interent.DomainSuffix();

//Credit Card
var type = Faker.CreditCard.CreditCardType();

var between = Faker.Date.Between();
var birthday = Faker.Date.Birthday();
var forwardTime = Faker.Date.ForwardWithTime();
var forwardTime1 = Faker.Date.ForwardWithTime(1, 1, 1);
var forward = Faker.Date.Forward(1, 1, 50);
var forward1 = Faker.Date.Forward();
var past = Faker.Date.Past(1, 1, 1);
var past1 = Faker.Date.Past();
var pasteTime = Faker.Date.PastWithTime();
var pasteTime1 = Faker.Date.PastWithTime(1, 1, 1);
var recent = Faker.Date.Recent(5);
var monthShort = Faker.Date.MonthShort();
var month = Faker.Date.Month();
var weekday = Faker.Date.Weekday();
var day = Faker.Date.Day();
var year = Faker.Date.Year();

var word = Faker.Lorem.Word();
var words = Faker.Lorem.Words();
var letter = Faker.Lorem.Letter();
var letters = Faker.Lorem.Letters(4);
var sentence1 = Faker.Lorem.Sentence();
var sentences = Faker.Lorem.Sentences(3);
var paragraph = Faker.Lorem.Paragraph(2);

var  = Faker.User.Username();
var  = Faker.User.Email();
var  = Faker.User.Password();
var  = Faker.User.Password(3);

Visual Studio 2017 - Montreal Launch Event Slide Deck

Here's the deck we used for the Visual Studio 2017 Launch Event in Montreal.

Surface Dial: How it works?

If you're been curious about how the Surface Dial works, the Microsoft Mechanics have published a nice video explaining how the Dial works.  Cool little puck!

Visual Studio 2017 "What's New" Poster

Microsoft has published a giant poster listing the new features in Visual Studio 2017.  It's pretty cool and informative, I just wonder how many pages does it take to print this thing.

Learn more and download the PDF version here.  Prefer a PNG? Here it is!

Real Time Power BI Dashboards Slide Deck

Here's the deck for the "Real Time Power BI Dashboards" presentation I did at the Montreal Power BI & Excel user group on March 15, 2017.

Visual Studio Talk Show - Les données et Azure

Nous discutons  avec Alexandre Brisebois et François Boucher de stratégies de gestion des données dans Azure.  Données structurées de type relationnelles ou données non structurées comme des documents ou du JSON, nous démystifions les services offerts dans Azure afin de gérer ces types de données.

Alexandre Brisebois est un professionnel des solutions technique chez Microsoft ou il fournit des conseils techniques et d'architecture sur Microsoft Azure. Passionné par le Web et l’infonuagique, il explore les technologies Microsoft depuis 2002. Sa curiosité pour les nouvelles technologies, accompagnée d’un besoin immense de partager de nouvelle découverte, lui ont permis de travailler avec des compagnies comme Pratt & Whitney Canada, CGI et Air France. Nous vous invitons à le suivre via twitter (@Brisebois) ou son blog (http://alexandrebrisebois.wordpress.com/)

Francois Boucher est un professionnel Microsoft Azure chez Lixar qui possède plus de 15 ans d'expérience dans l'industrie informatique. En plus d’être récipiendaire de la reconnaissance Microsoft Azure MVP, il fait partie du groupe des Microsoft Azure Advisor et il est certifié MCPD Windows Azure Developer. Une voix de confiance sur Microsoft Azure, Frank partage ses expériences avec Microsoft Azure sur ses deux blogs, Frankysnotes.com (en anglais) et Cloudenfrancais.com (en français). Frank a également collaboré avec succès à des projets open source tel que Azure User Management Console (AUMC), Kindle Coupures et Kindle Coupures Extractor.


Page List

Month List