Ronin – Key Vault

The first thing I am going to do is setup a standard way to work with and store the solutions primary secrets and cryptographic materials. I find that as a developer I am called on to decide or at least make recommendations on how to handle implementations of protocols, tools and technologies that need access…


Ronin Building Blocks - Network Template

I am a strong believer in building security into the solution from the ground up in general but when it comes to IoT it is pretty much mandatory. There seems to be a consistent stream of exploits and attacks on connected devices so to properly defend my solution against this I will start any deployment…


Ronin Building Blocks - Precision Time

Have you ever been working on debugging or diagnosing an issue and you need to get the time it takes to execute an external service call? I personally don’t want to use a stop watch, although it is a viable solution, when I already have the start time (DateTime.UtcNow) that I wrote to my logs, I just want…


Ronin Building Blocks - Circuit Breaker

I finished my retries building block, that should be good for basic handling of transient error conditions. When retries are used during throttling related to excessive load it creates the undesired side effect of increasing the load during the future retry attempt. This can result in prolonged throttling and in some cases unrecoverable situations. This sounds like a no…


Ronin Building Blocks – Retries

In most systems, it is important to use retries in the case of failure. Obviously not all errors make sense to retry such as “invalid password” where there is a configuration or other change required before it will succeed. Retrying when there is no chance for success is a fool’s game! You are probably asking…


Ronin Building Blocks - Secure String Helpers

The next building block that I will put together is for secure strings. There are almost always secrets to be stored and keep safe in memory so with a security first mindset making this a common utility library it will reduce the chance of one off security errors. In order to build this library there,…


Ronin Building Blocks – Parameter Validation

It is time to get started on the first building block. There are so many options to choose from when we are at the beginning of the project. I have decided to start with Parameter Validation seeing my decision was to have a security first mindset. The reason I chose this to start with, although…


Starting with Building Blocks to Save on Duct Tape

It would be easy to follow my urge to jump right in and begin coding the fun and interesting pieces of the solution but that will just lead to a bailing wire and duct tape type solution. To avoid the support and security issues that typically plague that approach over time we will build out…


Building an IoT Solution

Over the past two decades I have worked with a wide range of teams in a variety of industries building highly available, large scale systems and the experiences seem to be relatively consistent across them. The teams that act based on strong academic concepts understand the nature of a highly distributed and highly available system…


Windows Azure Start-up Tasks Part 2

In the previous post “Windows Azure Startup Tasks Part 1” we learned about the basics of start-up tasks and how they can enable you to realize solutions that may otherwise have been outside of the scope of PaaS.  This powerful feature offers some additional functionality that we will cover in this post. Towards the end…

0