Hybrid Cloud Security: A Leader's Essential Guide
The hybrid cloud is a very popular cloud deployment model nowadays. This is mainly because when a big company is moving to the cloud, it's not a simple process. You need months, and sometimes a few years, to move all your resources to the cloud. During that transition period, you'll have to operate your on-prem resources in cooperation with the cloud.
There are also other reasons for hybrid cloud. For example, in some highly regulated environments, data still needs to reside on-prem. No matter what your reasons are if you're going for a hybrid cloud approach, you need to be aware that this model brings some specific challenges when it comes to security. In this post, you'll learn what's so special about hybrid cloud in terms of security and how to tackle that.
Hybrid Cloud With On-Prem Security
Let's go straight to the point. The biggest challenge when it comes to hybrid cloud security is the fact that companies try to secure the cloud the same way as they secure their on-prem environments. They try to apply the same on-prem policies and use the same tools to secure the cloud environment. This creates a couple of challenges.
Security vs. Developer Experience
Typical on-prem-focused security tools aren't very efficient when it comes to the cloud. IP:PORT:PROTO-based firewalls aren't really suitable to secure your container-based applications. Of course, it's not like you can't do it. In fact, many companies go that route. But securing your cloud that way will usually lead to a very poor developer experience.
One of the main reasons for going to the cloud is flexibility and giving application teams more freedom. But, by securing your cloud environment the "on-prem" way, you can easily defeat these advantages. In a worst-case scenario, you can even kill all the benefits of moving to the cloud. What's the advantage for a developer to be able to create virtual machines via a self-service portal if they need to wait a few days for a firewall rule to be open before they can actually do anything useful with that virtual machine?
"The Cloud-Native Way"
Don't get me wrong. I'm not saying you should put less effort into securing the cloud. Quite the opposite, actually. Securing the cloud is more challenging than securing an on-prem environment. But what I'm getting at is the fact that you shouldn't treat the cloud-like an on-prem resource; therefore, you need to secure it "the cloud-native way." You need to understand that the cloud works differently than your data center. It's possible to have a secure cloud environment without compromising developer experience.
Cloud-Only Resources
Another aspect of securing a hybrid cloud environment is the fact that you can't forget about services that don't exist on-prem. Following the challenges from the previous section, if you don't go full cloud-native with your security but instead try to adapt your existing tools, you need to be aware that there are many services that simply don't exist on-prem. Therefore, traditional tools either won't be able to secure your environment at all or will only give you half-baked security.
Losing Control?
We mentioned earlier that one of the main points of moving to the cloud is to give application teams freedom in managing their infrastructure. This usually raises some concerns among traditional security teams: "How can we make it secure if everyone can deploy their own resources?" For that reason, very often that advantage of the cloud is taken away from developers. Back to square one. But there are easy ways to have your cake and eat it. Giving developers freedom doesn't automatically mean losing control and visibility.
One way to achieve that is to implement policies on the cloud. It's possible, for example, to forbid creating virtual machines exposed to the internet. A policy applied on the cloud will make sure that application teams can deploy their own virtual machines without anyone's approval as long as the machine doesn't have a public IP assigned to it. Another option is to use tools like Terraform or Crossplane to manage infrastructure. You can define what's allowed and what's not. So when developers create any resource, you can be sure that it's following the rules.
Compliance Challenges
In regulated environments, cloud adoption is particularly slow. You'll often hear, "We can't go full cloud because of compliance." However, that's not entirely true. There's no rule saying you can't go to the cloud. There are, however, many rules dictating how and where you can store customers' data. And it's quite a tedious process to get certified and check if you fulfil all the requirements.
But then again, similar to the arguments raised earlier in this post, the problem here is the fact that you try to make your cloud environment compliant the "on-prem" way. Compliance approval is often done once as a long, painful manual process—checking all the rules one by one. If I'd have to do it that way in an often-changing cloud environment, I'd also rather say, "We can't go to the cloud because of compliance reasons." But the truth is, there are tools that can help you scan your whole cloud environment against many different frameworks. Moreover, you can make that process continuous.
Complexity and Layers
Last but not least, cloud environments are complex. They're also layered. What this means is that cloud resources are often split into separate pieces. For example, when you create a virtual machine in the cloud, you usually create more than one resource. A virtual machine is not one resource. Its network interface and disks can be separated into their own resources. They're all linked together, but they are separate resources. This creates a problem for some traditional on-prem security tools. They may not understand these dependencies.
Some cloud resources work very differently than their on-prem equivalents. For example, when you create a DNS server in the cloud, you may not see any actual "DNS server." You'll get a service that works just like a DNS server, but you won't find a single machine called "DNS Server." It will be abstracted from you. Which, again, can confuse some traditional tools.
Cloud-Native Security
All of these challenges bring us to a single conclusion. Hybrid cloud security is only difficult when you try to use on-prem-focused tools to do the job. Cloud-native tools are better at monitoring on-prem environments than on-prem tools are at monitoring cloud environments, and that's a fact. Moreover, many cloud-native security tools are built with the hybrid cloud in mind. And that's the best you can get in order to secure your hybrid cloud environment.
Summary
The hybrid cloud is supposed to be an easy compromise for companies who can't or don't want to go full cloud yet. And, in fact, it's relatively easy to set up a hybrid cloud environment. However, it's also easy to make the cloud that's part of such an environment have all the disadvantages of the on-prem and not bring many of the typical cloud advantages. Most of the time, security is killing cloud advantages in a hybrid cloud environment—more precisely, on-prem security applied to the cloud environment.