What is Software-as-a-Service (SaaS)?
Software-as-a-Service, or SaaS for short, is a cloud-based method of providing software to users. SaaS users subscribe to an application rather than purchasing it once and installing it. Users can log into and use a SaaS application from any compatible device over the Internet. The actual application runs in cloud servers that may be far removed from a user's location.
A SaaS application may be accessed through a browser or through an app. Online email applications that users access through a browser, such as Gmail and Office 365, are common examples of SaaS applications.
The difference between SaaS and a software installation on a user's computer is somewhat like the difference between streaming a TV show online and buying all the seasons of the TV show on DVD.
Someone who buys a TV show on DVD only needs to pay for it once; however, they will need to store and maintain the DVDs, and if they change their hardware – for instance, if they replace their DVD player with a Blu-ray player – then they will need to purchase the physical media again. Streaming the show instead means a third party handles all the storage and upgrades, and all a user needs to do is press play. However, streaming is dependent on an Internet connection, and users typically need to pay a recurring monthly fee to maintain their access.
What does 'as a service' mean?
Consider the difference between valet parking and renting a parking spot. Valet parking is a service, while a parking spot is a product, even though both provide the same benefit to the customer: a place to leave their car.
Traditionally, software vendors sold their software to users as a product. However, in the SaaS model they actively provide and maintain the software for their users, via the cloud. They host and maintain the databases and code necessary for the application to run, and they run the application on their servers. Thus, SaaS is more like a service than a product.
What is the cloud?
"The cloud" refers to remote web servers in various data centers that host databases and run application code. Cloud providers deliver their services to customers or end users via the Internet. (See What is the cloud?)
What are the three main cloud service models?
SaaS is one of the three major cloud service models. The cloud service models are categories of services that cloud providers – in other words, companies that own and operate servers in various data centers – offers to users and businesses.
The three cloud service models are:
- IaaS (Infrastructure-as-a-Service): Cloud computing infrastructure – servers, databases, etc. – that a cloud provider manages. Companies can build their own applications on IaaS instead of maintaining their applications' backends themselves.
- PaaS (Platform-as-a-Service): One level up from IaaS, PaaS includes development tools, infrastructure, and other support for building applications.
- SaaS (Software-as-a-Service): Fully built cloud applications.
What are the advantages and disadvantages of using SaaS?
The SaaS model has a number of pros and cons, although for modern businesses and users the pros of SaaS often outweigh the cons. Here are some of the advantages and disadvantages of using SaaS applications:
- Advantage: Access from anywhere, on any device. Typically, users can log into SaaS applications from any device and any location. This offers a great deal of flexibility – businesses can allow employees to operate all over the world, and users can access their files no matter they are. In addition, most users use multiple devices and replace them often; users don't need to reinstall SaaS applications or purchase new licenses each time they switch to a new device.
- Advantage: No need for updates or installations. The SaaS provider updates and patches the application on an ongoing basis.
- Advantage: Scalability. The SaaS provider handles scaling up the application, such as adding more database space or more compute power as usage increases.
- Advantage: Cost savings. SaaS cuts down on internal IT costs and overhead. The SaaS provider maintains the servers and infrastructure that support the application, and the only cost to a business is the subscription cost of the application.
- Disadvantage: The need for stronger access control. The increased accessibility of SaaS applications also means that verifying user identity and controlling access levels becomes very important. With SaaS, organizational assets are no longer kept within an internal network, separate from the outside world. Instead, user access is based on user identity: if someone has the right login credentials, they are granted access. Strong identity verification thus becomes crucial.
- Disadvantage: Vendor lock-in. A business may become overly reliant on the SaaS application provider. It's time-consuming and expensive to move to a new application if an organization's entire database is stored within the old application.
- Disadvantage (for enterprises): Security and compliance. With SaaS applications, the responsibility for protecting those applications and their data moves from internal IT teams to the external SaaS providers. For small to medium-sized businesses, this is less of a disadvantage, as large cloud providers typically have more resources for putting strong security in place. But this can be a challenge if a large business faces tight security or regulatory standards. In some cases businesses will be unable to assess their applications' security themselves, for instance by performing penetration testing. Essentially, they have to take the external SaaS provider's word that the application is secure.
What are some examples of SaaS companies?
As mentioned above, online email providers fit into the SaaS category. Other well-known SaaS companies include Salesforce, Slack, MailChimp, and Dropbox.
How does Cloudflare help secure and accelerate SaaS applications?
Cloudflare offers a number of products and features for helping businesses in their cloud migration process. For businesses deploying SaaS applications, Cloudflare Access secures, authenticates, and monitors user access to any domain, application, or path protected by Cloudflare. The Cloudflare Web Application Firewall (WAF) also helps block malicious traffic targeting cloud assets, in addition to allowing customers to write their own firewall rules.
On the other side of things, Cloudflare technology helps SaaS providers:
- Manage their DNS settings
- Manage CDN caching for faster performance
- Deliver TLS traffic from any domain
- Write and run fast-performing serverless applications at the edge