11 Jun · 4 min read
Google has always been a leader when it comes to security culture, and google’s approach to managing a secure development lifecycle is no exception. This article introduces Google’s Binary Authorization for Borg (BAB), and will show you how you can implement the same binary authorization system to ensure that production software and configuration deployed in your organization is properly reviewed and authorized.
As with any security-centered culture, Google understands that insider risk represents a significant threat to the security of user data, and that the only way to ensure compliance is by employing a zero-trust model. BAB is Google’s internal technology for ensuring their secure development process is being followed.
“At Google, we want to do as much as we can to minimize the potential for Google personnel to use their organizational knowledge or access to user data in an unauthorized way_一_this includes running an unauthorized job”
At its heart, BAB is a pre-deployment check that production software and configuration deployed at Google is properly reviewed and authorized. The way it works is to require all services to define a BAB policy which is then automatically checked as part of the DevOps pipeline.
Some of the checks that can be automated in BAB include:
By incorporating these basic checks into the development pipeline, Google ensures that all production jobs automatically comply with security requirements.
Adopting BAB has helped Google:
These benefits can be realized in unexpected ways, as described by Google itself:
BAB simplified what were previously manual compliance tasks. Certain processes at Google require tighter controls on how they deal with data. For example, our financial reporting systems must comply with the Sarbanes-Oxley Act (SOX). Prior to BAB, we had a system that helped us manually perform verifications to ensure our compliance. Post BAB, many of these checks were automated based on the services’ BAB Policies. Automating these checks enabled the compliance team to increase both the scope of services covered and the adoption of appropriate controls on these services.
The good news is that you don’t need to work at Google to get the advantages of compliance automation. Merkely provides the necessary primitives for tracking binary compliance data and automating change processes in exactly the same manner as Google’s BAB – without changing any of your existing tools or processes.
There are three basic steps to implementing BAB in your own projects:
This is what the result would look like in a typical DevOps pipeline:
As with BAB, once you have basic compliance automation with Merkely you can start to look at more advanced policies and scenarios. At Google, they have specified three interesting approaches, each with increasing security:
Having a ramped approach like this allows teams a lightweight way to get started while offering a clear path towards continuous compliance.
With BAB, Google has implemented a tech-savvy approach to security compliance automation. Adopting BAB has allowed Google to reduce insider risk, prevent possible attacks, and also support the uniformity of production systems.
Leave a comment