Welcome!

@CloudExpo Authors: Liz McMillan, Matt Brickey, Elizabeth White, Christoph Schell, Rene Buest

Related Topics: @CloudExpo

@CloudExpo: Article

API Security: Six Themes for Securing Your API | @CloudExpo #API #Cloud #Security #Microservices

There are a few key areas your team should be focused on if you have responsibility for an API

API Security: Six Themes for Securing Your API
By Cameron Laird

Security certainly feels a lot more like a journey than a destination. This is especially true with APIs becoming a critical piece of any mobile or web application. With so much information being shared through APIs, teams need to ask themselves: how can you effectively secure your API?

While the security demands of developing and maintaining APIs will continue to evolve, there are a few key areas your team should be focused on if you have have responsibility for an Application Programming Interface (API):

1. Mobility
Mobility, mobility, mobility. If you want to know the top three themes for 2016 (and the last few years) that would be it. Between mobile consumers who count on results while on the go, and the ongoing explosion of the Internet of Things (IoT), the most important API trends in 2016 are centered on mobile consumption.

What makes mobile API use special? Authentication, reliability, and performance constraints.

A simple-minded design might model an API client directly on a mobile device, in communication with the API server. This is rarely appropriate, though, because it entails embedding an API key on the handheld. This effectively means that the application's API key - created as a private asset of the application developer - is available to any user of the application or mobile device. This should rarely be acceptable.

It might seem that mobile native applications have the same architectural constraints as Web applications; at a sufficiently high level of abstraction, they do look much the same.

But there are also a few crucial differences.

Web browsers build in a great deal of security sophistication, particularly in regard to certificate and DNS (domain name system) management. Native applications rarely attempt, let alone achieve, the same level of authentication refinement. This is true in a couple of complementary aspects: first, only large-scale projects like browsers currently undertake such demanding technologies as HTTP Strict Transport (HSTS).

Also, Web development culture is simply more advanced in regard to coding: many Web developers at least are familiar with the idea of generation of a new token for each use of a form, as protection against Cross-Site Request Forgery (CSRF). While CSRF is a considerably smaller threat for native applications, native application programmers too often aren't even aware of their CSRF vulnerabilities.

Source cracking is similar. Web developers generally understand that client-side code is effectively public. Most know that API keys and other constants in JavaScript are straightforward to access. Too many native application programmers succumb to the temptation of compiling credentials into their applications. While it's harder to get at the source of a native application than the corresponding client-side Web application, the difficulty is not enough that native application programmers should feel safe.

What alternative do developers have?

One way or another, secure API-based applications essentially need communication with at least two servers. Any API key must be on an application server, either in direct communication with the API server, or at least delivering API tokens for a protocol such as OAuth.

Mobile APIs also face a reliability challenge. While traditional client-server and SOA (service-oriented architecture) applications often can assume connectivity between client and server, that's unrealistic for many mobile applications. At the very least, many of the communications of a mobile application must build in retries and more care in error-handling.

Part of the solution for these difficulties is to use standard frameworks or libraries that take responsibility for secure, reliable, and adequately-performing communications and session management. At the same time, too many frameworks encourage simple-minded fine-grained exposure of underlying database tables. It's a greater consumer benefit and almost certainly more secure to define instead a higher-level API expressed in business logic, rather than data tables or low-level object attributes. Smart developers, therefore, use a framework, but carefully craft the API to provide just what client applications need, without the excess of functionality that invites attack from crackers.

2. Community success
The second big theme for API security in 2016 is thoughtful support of the developer community. Most API publishers document their offerings to the point of a reference manual of signatures, and probably a "Hello, world!"-level sample program. One of the best investments publishers can make is in richer support of their API consumers: a collection of example programs illustrating different security practices, prompt technical support, community infrastructure for public answers to questions, and continuing education through webinars or podcasts or other means. The publisher should target, not just sale of licenses, but successful deployments of working, secure applications by its licensees. Among other pay-offs, this is a great way to prevent security incidents that tarnish the API's brand.

The previous section, on Mobility, already mentioned cultural differences between Web and native development. Cultivation of a healthy culture around that specific API is simply a winning bet. The alternative is to assume application developers teach themselves how to make the most of the API. An API worth careful, secure engineering also deserves corresponding care with its consumers.

3. Measurement
An API publisher provides and documents an entry point such as Customer. A trustworthy API publishers knows more about Customer: how often customers request it, the variations in that rate, the distribution of latencies in delivering results to customers, the defaults customers use, and so on. An essential element of security is to log, measure, and review daily operations. Among other benefits, this enables detection of anomalies as well as prioritization of security enhancements.

Measurement is necessary for rational management on all fronts. Questions about scaling, pricing, hiring, and so on all deserve answers based on measurement of actual API usage.

4. Testing
Testing is a crucial theme
of API security every year, not just in 2016. One aspect of functional testing especially timely now is beyond-ASCII data. Too many testing suites rely on data with the complexity of "Hello, World". When customers send through other-than-English Unicode data, errors too often turn up. When crackers experiment with carefully-crafted Unicode spoofs, vulnerabilities open up. In 2016, it's time not just to test that an API works, but that it works safely.

5. API Management
Service providers - Content Developer Networks (CDNs), API gateways, API proxies, and more - offer a range of values for API publishers. Most API publishers should focus on the functionality of their APIs, while buying security, scaling, and manageability expertise outside. 2016 is a good time to explore the increasingly sophisticated marketplace for API management.

6. Microservices
Microservices
are certainly fashionable now. The implications of microservice implementations for API security are complex and beyond the scope of this survey. The starting point for such an analysis is that an API publisher clearly understand its own business and technical goals with its API: is it trying to re-use assets and reduce the costs of internal projects? Profit from the interest of external application authors? Will the API grow in traffic to a constant collection of entry points, or is the intent to extend the API "horizontally" to richer services? Is the API a fine-grained exposure of data tables, or a higher-order access to business logic? All these questions bear on the role of microservices in an API architecture.

Summary
API growth has only begun; it's still more future than past. With a little care, prospective API publishers can arrange the basic security that keeps the bad guys away, and allows focus on the functionality and customer service that deserve attention.

More Stories By SmartBear Blog

As the leader in software quality tools for the connected world, SmartBear supports more than two million software professionals and over 25,000 organizations in 90 countries that use its products to build and deliver the world’s greatest applications. With today’s applications deploying on mobile, Web, desktop, Internet of Things (IoT) or even embedded computing platforms, the connected nature of these applications through public and private APIs presents a unique set of challenges for developers, testers and operations teams. SmartBear's software quality tools assist with code review, functional and load testing, API readiness as well as performance monitoring of these modern applications.

@CloudExpo Stories
Kubernetes is an open source system for automating deployment, scaling, and management of containerized applications. Kubernetes was originally built by Google, leveraging years of experience with managing container workloads, and is now a Cloud Native Compute Foundation (CNCF) project. Kubernetes has been widely adopted by the community, supported on all major public and private cloud providers, and is gaining rapid adoption in enterprises. However, Kubernetes may seem intimidating and complex ...
"Outscale was founded in 2010, is based in France, is a strategic partner to Dassault Systémes and has done quite a bit of work with divisions of Dassault," explained Jackie Funk, Digital Marketing exec at Outscale, in this SYS-CON.tv interview at 20th Cloud Expo, held June 6-8, 2017, at the Javits Center in New York City, NY.
"We focus on SAP workloads because they are among the most powerful but somewhat challenging workloads out there to take into public cloud," explained Swen Conrad, CEO of Ocean9, Inc., in this SYS-CON.tv interview at 20th Cloud Expo, held June 6-8, 2017, at the Javits Center in New York City, NY.
"I think DevOps is now a rambunctious teenager – it’s starting to get a mind of its own, wanting to get its own things but it still needs some adult supervision," explained Thomas Hooker, VP of marketing at CollabNet, in this SYS-CON.tv interview at DevOps Summit at 20th Cloud Expo, held June 6-8, 2017, at the Javits Center in New York City, NY.
"We are still a relatively small software house and we are focusing on certain industries like FinTech, med tech, energy and utilities. We help our customers with their digital transformation," noted Piotr Stawinski, Founder and CEO of EARP Integration, in this SYS-CON.tv interview at 20th Cloud Expo, held June 6-8, 2017, at the Javits Center in New York City, NY.
"We've been engaging with a lot of customers including Panasonic, we've been involved with Cisco and now we're working with the U.S. government - the Department of Homeland Security," explained Peter Jung, Chief Product Officer at Pulzze Systems, in this SYS-CON.tv interview at @ThingsExpo, held June 6-8, 2017, at the Javits Center in New York City, NY.
"We're here to tell the world about our cloud-scale infrastructure that we have at Juniper combined with the world-class security that we put into the cloud," explained Lisa Guess, VP of Systems Engineering at Juniper Networks, in this SYS-CON.tv interview at 20th Cloud Expo, held June 6-8, 2017, at the Javits Center in New York City, NY.
"With Digital Experience Monitoring what used to be a simple visit to a web page has exploded into app on phones, data from social media feeds, competitive benchmarking - these are all components that are only available because of some type of digital asset," explained Leo Vasiliou, Director of Web Performance Engineering at Catchpoint Systems, in this SYS-CON.tv interview at DevOps Summit at 20th Cloud Expo, held June 6-8, 2017, at the Javits Center in New York City, NY.
Your homes and cars can be automated and self-serviced. Why can't your storage? From simply asking questions to analyze and troubleshoot your infrastructure, to provisioning storage with snapshots, recovery and replication, your wildest sci-fi dream has come true. In his session at @DevOpsSummit at 20th Cloud Expo, Dan Florea, Director of Product Management at Tintri, provided a ChatOps demo where you can talk to your storage and manage it from anywhere, through Slack and similar services with...
"Peak 10 is a hybrid infrastructure provider across the nation. We are in the thick of things when it comes to hybrid IT," explained Michael Fuhrman, Chief Technology Officer at Peak 10, in this SYS-CON.tv interview at 20th Cloud Expo, held June 6-8, 2017, at the Javits Center in New York City, NY.
As enterprise cloud becomes the norm, businesses and government programs must address compounded regulatory compliance related to data privacy and information protection. The most recent, Controlled Unclassified Information and the EU’s GDPR have board level implications and companies still struggle with demonstrating due diligence. Developers and DevOps leaders, as part of the pre-planning process and the associated supply chain, could benefit from updating their code libraries and design by in...
SYS-CON Events announced today that Calligo, an innovative cloud service provider offering mid-sized companies the highest levels of data privacy and security, has been named "Bronze Sponsor" of SYS-CON's 21st International Cloud Expo ®, which will take place on Oct 31 - Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Calligo offers unparalleled application performance guarantees, commercial flexibility and a personalised support service from its globally located cloud plat...
"We are an IT services solution provider and we sell software to support those solutions. Our focus and key areas are around security, enterprise monitoring, and continuous delivery optimization," noted John Balsavage, President of A&I Solutions, in this SYS-CON.tv interview at 20th Cloud Expo, held June 6-8, 2017, at the Javits Center in New York City, NY.
"We were founded in 2003 and the way we were founded was about good backup and good disaster recovery for our clients, and for the last 20 years we've been pretty consistent with that," noted Marc Malafronte, Territory Manager at StorageCraft, in this SYS-CON.tv interview at 20th Cloud Expo, held June 6-8, 2017, at the Javits Center in New York City, NY.
There is a huge demand for responsive, real-time mobile and web experiences, but current architectural patterns do not easily accommodate applications that respond to events in real time. Common solutions using message queues or HTTP long-polling quickly lead to resiliency, scalability and development velocity challenges. In his session at 21st Cloud Expo, Ryland Degnan, a Senior Software Engineer on the Netflix Edge Platform team, will discuss how by leveraging a reactive stream-based protocol,...
"We are focused on SAP running in the clouds, to make this super easy because we believe in the tremendous value of those powerful worlds - SAP and the cloud," explained Frank Stienhans, CTO of Ocean9, Inc., in this SYS-CON.tv interview at 20th Cloud Expo, held June 6-8, 2017, at the Javits Center in New York City, NY.
"DivvyCloud as a company set out to help customers automate solutions to the most common cloud problems," noted Jeremy Snyder, VP of Business Development at DivvyCloud, in this SYS-CON.tv interview at 20th Cloud Expo, held June 6-8, 2017, at the Javits Center in New York City, NY.
DevOps at Cloud Expo, taking place October 31 - November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA, is co-located with 21st Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. The widespread success of cloud computing is driving the DevOps revolution in enterprise IT. Now as never before, development teams must communicate and collaborate in a dynamic, 24/7/365 environment. There is no time to w...
"As we've gone out into the public cloud we've seen that over time we may have lost a few things - we've lost control, we've given up cost to a certain extent, and then security, flexibility," explained Steve Conner, VP of Sales at Cloudistics,in this SYS-CON.tv interview at 20th Cloud Expo, held June 6-8, 2017, at the Javits Center in New York City, NY.
Internet of @ThingsExpo, taking place October 31 - November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA, is co-located with 21st Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. The Internet of Things (IoT) is the most profound change in personal and enterprise IT since the creation of the Worldwide Web more than 20 years ago. All major researchers estimate there will be tens of billions devic...