What Is PaaS Security?
Platform as a Service (PaaS) is a cloud computing service model that allows users to rapidly develop software and applications via a comprehensive, cloud-based platform. Often used by developers, PaaS allows users to build, compile, and run programs without worrying about the underlying infrastructure and without the need to deploy and configure software.
PaaS does not require users to manage or control networks, servers, operating systems, and storage, but does allow users some control over software workflows, configurations, and in some cases, the application hosting environment.
When considering PaaS security as part of an organization’s cloud security strategy, PaaS users should pay attention to their identity as a key security perimeter. In addition, it is important to secure code artifacts such as repositories and container images, ensure development workflows are tightly controlled, secure sensitive data, and ensure monitoring, logging, and auditability of the entire development lifecycle.
In this article:
- PaaS Security Threats and Concerns
- Understanding the PaaS Provider’s Security Model
- PaaS Security Solutions
- PaaS Security Best Practices
PaaS Security Threats and Concerns
PaaS platforms are attractive targets for hackers because they provide access to a wide range of applications and data:
- Platform vulnerabilities—attackers can exploit vulnerabilities in the platform or applications running on the platform to gain control over the system or steal sensitive data.
- Application vulnerabilities—developers who build applications using PaaS platforms may not use secure coding practices, resulting in security vulnerabilities within applications. This can affect not only security of the individual application but of the entire PaaS ecosystem.
- Limited visibility—as the complexity of PaaS infrastructure increases, it becomes more difficult to achieve visibility, detect vulnerabilities and threats and understand how to mitigate them.
Understanding the PaaS Provider’s Security Model
When working with a PaaS provider, you need to understand how the platform works and what you need to do to protect your data.
Security is not the sole responsibility of the PaaS provider. When choosing a PaaS provider, consider these important questions:
- What access controls does the provider offer, at which level of granularity do they operate, and what is needed on a day-to-day basis to secure applications.
- What type of encryption is available and what are the practical steps to enable it for each type of workload.
- Whether the provider offers backups and disaster recovery as part of their service, and if not, how the customer should handle these concerns.
- What integration points the PaaS frameworks has with other applications or cloud systems, and who is responsible for preventing security threats facing those systems.
PaaS Security Solutions
The following technology solutions can help cloud customers secure their PaaS environment.
Cloud Access Security Broker (CASB)
A Cloud Access Security Broker (CASB) is a software tool or service that sits between an organization’s on-premises infrastructure and the cloud provider’s infrastructure. It works by ensuring that network traffic between on-premises devices and cloud providers is compliant with an organization’s security policies. CASBs are available on-premises or a cloud-based service.
CASB uses auto-discovery to identify cloud applications in use, high-risk applications, high-risk users, and other risk factors. It can implement security access controls such as encryption and device analysis. If single sign-on (SSO) is not available, it can also perform credential mapping.
Cloud Workload Protection Platforms (CWPP)
CWPP is a next-generation security management tool that helps keep workloads secure in cloud environments. It protects not only the application itself, but also the processes and resources that support each workload, such as the networks and databases used by an application.
Another advantage of CWPP is that it protect individual workloads across complex hybrid and multi-cloud architectures. For example, if a workload has five instances running in one cloud, five other instances in another cloud, and two instances on-premises, CWPP sees all 12 instances as a single workload and provides consistent protection.
Cloud Security Posture Management (CSPM)
Cloud Security Posture Management (CSPM) is a security solution designed to identify cloud misconfiguration and compliance risks. It continuously monitors gaps in security policy and helps enforce secure configurations in cloud infrastructure.
CSPM is typically used by organizations that are adopting a cloud-first strategy and want to extend security best practices to hybrid and multi-cloud environments. It can be used to minimize misconfiguration issues in PaaS services and the applications running within them. It also reduces compliance risk across a cloud environment.
Learn more in our detailed guide to cspm.
Related content: Read our guide to multi cloud security.
PaaS Security Best Practices
The following best practices can help you more effectively secure PaaS environments.
Threat Modeling
Threat modeling involves deconstructing the application’s design into components and analyzing how these components interact from an attacker’s perspective. The goal is to evaluate the application and the risks it faces to outline mitigation steps for remediating previously uncovered vulnerabilities
Encrypt Data at Rest and in Transit
PaaS vendors typically provide encryption for data in transit by default or provide mechanisms to enable it. Encryption helps protect data passing through REST APIs, which use HTTPS as communication transport.
In PaaS environments, data in transit has a higher security priority than data at rest, because PaaS has complex workflows and tends to integrate with multiple external systems. However, you should still encrypt stored data, such as configurations, session information, or sensitive customer data. Typically, data at rest encryption requires using tools that work with the PaaS vendor’s APIs.
In addition to setting up encryption, you should also implement secure secret management to protect artifacts that require security, such as keys generated and used for at-rest encryption, passwords, and API tokens.
Consider Portability to Avoid Lock-in
Each PaaS vendor offers support for different features like underlying APIs, programming languages, and security services. One PaaS vendor may support Python and Java, while another supports Go, JavaScript, and C#.
Due to the underlying platform APIs, you rarely can “drop in and replace” the vendor. To maximize portability and minimize lock-in, you should choose a language supported by most vendors.
Most providers support popular languages like C#, Java, and Python. If you use a niche vendor, you can create wrappers around the niche APIs to implement a layer of abstraction between a service or application and the underlying niche APIs. This technique can ensure you only need to make one modification when changing providers.
Take Advantage of Platform-specific Security Features
Each PaaS vendor offers different security features. You need to investigate the available security features and then enable them. Common security features include a web application firewall, application gateway, and enhanced monitoring and logging.
You should also maintain a strong identity and credential management by implementing the features offered by the cloud vendor. Common features include identity and access management, authentication, and authorization. Ideally, you should integrate these features into back-end processes for developer or administration access and application access.