How to spur business agility by linking DevOps with identity
Article by Ping Identity technical director for Asia Pacific and Japan Andrew Latham.
With uncertainty and disruption swirling through the economy, being agile has never been more critical for a business.
It's vital to change everything from workflows and supply chains to service delivery and communication channels if a business is to survive and thrive in the coming months. Taking a ‘business as usual’ approach is no longer an option.
Increasingly, this agile strategy is also being applied to the task of software development. Organisations realise that having the ability to write and test code quickly can mean the difference between capitalising on a new opportunity and missing out.
The rise of DevOps
To help in this process, growing numbers of organisations are embracing the DevOps approach to code creation. DevOps enables a business to be agile enough to quickly adapt or be the first to market.
Many are also realising the need to add identity to their DevOps strategy. Previously, identity initiatives have tended to stretch organisations’ limits while they struggle to keep pace with application growth.
Now, finally, DevOps is starting to gain traction in the identity space, and for good reason — identity is becoming a crucial part of application onboarding. Without collaboration between identity teams and DevOps teams, many of the intended benefits of DevOps can quickly unravel.
The DevOps approach to software development breaks down traditional silos by eliminating manual tasks and replacing them with automation so that releases and updates can be pushed out faster and more frequently.
At its core, DevOps improves the efficiencies between application development and IT operations or infrastructure teams. Previously, developers would make manual requests to identity teams or IT ops and lose valuable time.
In DevOps, the identity teams enable the software to be consumable via APIs or infrastructure-as-code, which are the preferred methods for developers.
Also, the DevOps model has specific tools for implementation. The most common include Docker, which enables software in images or ‘containers,’ and Kubernetes, which is the orchestration engine that manages containers. These tools allow developers to easily spin up infrastructure and perform updates with minimal interruption.
DevOps and identity
When launching a new service or deploying a new application, it’s critical to do so within an organisation’s existing identity ecosystem. This is typically achieved by using a federation hub or centralised authentication services.
However, many identity teams struggle to keep up with the sheer volume of requests that come from the DevOps environment, which can significantly outnumber the release cycles of other application methodologies.
Also, in many cases, developers don’t care about the details of effective identity management. At the same time, the identity team doesn’t need to have DevOps experts to enable developers.
For identity to be consumed in a DevOps environment, identity teams need to prepare pre-configured profiles or images. They then need to make them readily available on the most popular tools used by DevOps teams. And most importantly, identity teams need the ability to centrally manage identity as the DevOps environment scales.
This can be achieved by using containers that allow an identity platform to be pre-packaged and consumed in any app environment. It’s also essential to have a centralised way of managing identity and understanding how it’s deployed in a DevOps environment.
The power of the container
When identity is deployed via containers, it provides operational flexibility that can have a significant impact on a business. Some of the key benefits include:
Consistent delivery: Deploying configurations as code eliminates the need for manual processes. This allows development teams to deploy identity with confidence in a repeatable manner.
Platform flexibility: Tools such as Docker and Kubernetes are platform agnostic and based on open standards, providing an organisation with an improved level of independence.
Better deployments: It’s also possible to leverage cloud scaling capabilities to meet demand, SLAs and other defined thresholds. Auto-scaling and auto-healing features optimise spending so that the organisation is using only the capacity that it requires.
Building identity into DevOps processes does not limit teams to working in just one environment. Essentially, anywhere that you can put a Docker image, you can put identity. Docker images can be deployed in any cloud, including AWS, Azure and Google Cloud.
Docker images can also be deployed directly to an on-premises data centre for mission-critical use cases where uptime needs to remain under strict control. Whatever environment you choose, DevOps ensures that you easily move and re-apply your identity infrastructure when required.
Ensuring identity is included in any DevOps strategy can deliver significant advantages for an organisation. Rather than being seen as a necessary evil, it can become a crucial component in an agile and powerful infrastructure.