Kusk-gateway 1.1.0: Authentication support + more

June 30, 2022
Est. reading time:
5 min
The Kusk team is proud to announce the v1.1.0 release of Kusk Gateway, which adds Header Based Authentication, Rate limiting, Caching and Post-processed OpenAPI definitions
Christopher Jones
Senior Product Manager
Kusk
Table of Contents
Kusk-gateway 1.1.0: Authentication support + more

# Summary

The Kusk team is proud to announce the v1.1.0 release of Kusk Gateway, which adds Header Based Authentication, Rate limiting, Caching and Post-processed OpenAPI definitions!

# Intro

The Kusk team is proud to announce the v1.1.0 release of Kusk Gateway!

For the unfamiliar, what makes [Kusk Gateway](https://kubeshop.github.io/kusk-gateway/) unique is that it uses the ubiquitous OpenAPI specification file as a single source of truth for making an API available to consumers, which includes routing configuration, request validation, timeouts, etc. It will especially resonate with developers and teams like ours, who have adopted a design-first approach to API development. Thanks to Kusk Gateway and industry-standard OpenAPI (f.k.a Swagger), you can quickly publish your APIs deployed in Kubernetes without having to add any additional configuration resources, which plays nicely with both manual and automated/GitOps-based development workflows.

Kusk Gateway enables you to design and deploy your APIs from a single OpenAPI definition, allowing you to:

- **Rapidly prototype your APIs** by mocking your API responses, allowing your teams to instantly start building on top of your APIs without your services being implemented

- Protect your endpoints with **automatic request and response validations**

- Configure critical policies like request timeouts and CORs with **no coding required**

- Centrally control your APIs from an Open Source dashboard

- **Automate the entire deployment process of your API** without requiring manual DevOps intervention

Kusk Gateway is for you if:

- You or your team develops REST APIs running in Kubernetes

- You embrace a design-first approach to developing your APIs using OpenAPI

- You don't want to spend lots of time configuring ingress controllers or gateways that require a dedicated Ops Engineer

- You want your REST API endpoints to be configured, both functionally and operationally from one source of truth.

# What’s new?

Since the last beta release we have been focusing on making the core of Kusk Gateway production ready - but have also managed to squeeze in some new functionality.

## Header Based Authentication

Through x-kusk extensions you can now specify a service or host to validate authentication headers. This can be used for any headers based authentication, including common authentication schemes like basic authentication and API key headers.

## Rate Limiting

Kusk Gateway makes it easy to apply rate limiting policies to your API. These can be specified globally or at the path or operation level.

[Read more about rate limiting extensions](https://kubeshop.github.io/kusk-gateway/guides/rate-limit/).

## Caching

Caches are one way to reduce latency and network traffic, as the response is directly returned from the gateway. Kusk Gateway can implement all the complexity of an HTTP cache with a simple annotation in your OpenAPI spec. These policies can be applied at the global, path, or operation levels.

[Read more about caching extensions](https://kubeshop.github.io/kusk-gateway/guides/cache/).

## Improved Mocking

Kusk Gateway no longer requires a separate process to handle mocking. Mocking is all handled natively in Envoy now.

## Public OpenAPI Endpoint

Kusk Gateway will now expose a public endpoint with a post-processed version of the OpenAPI spec. This version will be stripped of all Kusk specific extensions and is useful for code generation, documentation, developer portals, etc.

-- CODE language-yaml --
x-kusk:
  openapi-path: "simple/spec.json"

After applying an API with the above extension property, an endpoint will be created "simple/spac.json". The generated JSON file will contain only endpoints or endpoint operations that are not exposed to your users (by default all are exposed more details [here](https://kubeshop.github.io/kusk-gateway/guides/routing/#disabling-operations)). It is worth noting that this is only the first iteration and in future we are going to include path redirection and rewrites.

## Upgradability

You can now upgrade your Kusk Gateway directly from the Kusk CLI.

-- CODE language-bash --
$ kusk upgrade

[Read more about upgrading Kusk Gateway](https://github.com/kubeshop/kusk/blob/doc_generate/docs/kusk_upgrade.md).

# The roadmap post 1.1.0

The main areas for improvement we are planning after this 1.1.0 release include:

- OAuth Authentication

- Developer experience improvements

- Advanced mocking support

- … and much more!

For more about future enhancements, you're welcome to check out the [1.2.0](https://github.com/kubeshop/kusk-gateway/milestone/8)[Release](https://github.com/kubeshop/kusk-gateway/milestone/8)[project on GitHub](https://github.com/kubeshop/kusk-gateway/milestone/8) to see how things are going, don't hesitate to jump in with comments, suggestions or a Pull Request!

# Try it out!

Head over to the [Kusk Gateway GitHub repository](https://github.com/kubeshop/kusk-gateway) to download the [latest release](https://github.com/kubeshop/kusk-gateway/releases) - installation instructions and documentation are [available there as well](https://kubeshop.github.io/kusk-gateway/). If you have any questions or ideas please feel free to join our [Discord server](https://discord.gg/uNuhy6GDyn) and get in touch.

Thank you!

Tags:
release

Related Content

November 30, 2022
|
3 min
read

Kusk-gateway 1.4: OpenAPI code-first support

We're proud to announce the v1.4 release of Kusk Gateway, which adds support for code-first OpenAPI generation, install Kusk CLI using `apt` and `choco` and scalable authorization with Cloudentity.

Open API
Kusk
Design-first
October 14, 2022
|
5 min
read

Kusk + Cloudentity: Fine-Grained API Authorization

Kusk has partnered with Cloudentity, an Authorization as a Service platform, to enable users to create powerful authorization rules while still using OpenAPI at the core of their API workflows!

Open API
Kusk
Design-first
October 3, 2022
|
4 min
read

Kusk v1.3: Updated CLI & dashboard experience

We're excited to release Kusk v1.3 with many improvements to the CLI experience, and a totally new design of the dashboard. Read more to learn about the new features!

Open API
Kusk
Design-first
September 12, 2022
|
6 min
read

Setup Ingress Controller with CORS configuration

Adding CORS should not be complicated. Read more to learn how Kusk help CORS configuration using OpenAPI.

Open API
Kusk
Design-first
September 7, 2022
|
6 min
read

Can Agile Teams Have a Design-First Approach to APIs?

Read more to learn how you can combine the power of OpenAPI with a Design-First approach with a successful agile environment!

Open API
Kusk
Design-first
September 6, 2022
|
3 min
read

Kusk-gateway 1.2.0: OAuth, Local Mocking + more

The Kusk team is proud to announce the v1.2.0 release of Kusk Gateway, which adds OAuth support, mocking of the API directly from the CLI and improved developer experience of the CLI!

Open API
Kusk
Design-first
September 6, 2022
|
2 min
read

Kusk on the Road - Our September ‘22 Schedule

The Kusk team is hitting the road to meet users and industry friends face-to-face across the US in September. Read more to see how we can meet!

Open API
Kusk
Design-first
August 23, 2022
|
Newstack
read

What it means to be OpenAPI-first in Kubernetes

Dive into how OpenAPI can help API developers become productive and what its support looks like in the current state of the Kubernetes realm

Open API
Kusk
Design-first
July 21, 2022
|
6 min
read

Automatic Request Validation with OpenAPI

Let's explore how you can use OpenAPI with Kusk Gateway to ensure that all the request bodies sent to your cluster a properly validated!

Open API
Kusk
Design-first
June 20, 2022
|
7 min
read

Rapidly prototype your APIs on K8s w/Kusk-gateway

We will explore how to use Kusk Gateway and OpenAPI to generate automatic mocks of your APIs that will allow for rapid prototyping between your teams

Open API
Kusk
Design-first
May 19, 2022
|
5 min
read

APIOps Lifecycle: API workflows via OpenAPI Definition

What is APIOps and how can we use the OpenAPI standard as a way to implement an API-First & Design-first approach to development of modern REST APIs deployed to Kubernetes.

Open API
Kusk
Design-first
May 5, 2022
|
2 min
read

Kusk-gateway 1.0: OpenAPI-driven K8s Ingress Controller

The Kusk team is proud to announce the v1.0 of Kusk-gateway, which adds Kubernetes API mocking capabilities, a CLI tool, auto-deployments, an interactive dashboard, and HTTP-related improvements.

Open API
Kusk
Design-first
April 21, 2022
|
8 min
read

Design-First to Automated Deployment w/OpenAPI

Use OpenAPI to drive the functional and operational aspects of your APIs with a Design-First approach and automated deployment.

Open API
Kusk
Design-first
March 28, 2022
|
3 min
read

Kusk-gateway  OpenAPI-driven Kubernetes Ingress Controller Beta

The Kusk team is proud to announce the beta release of Kusk Gateway, which adds API mocking capabilities, a CLI tool, and HTTP/SSL-related improvements.

Open API
Kusk
Design-first
January 31, 2022
|
Newstack
read

Can You GitOps Your APIs?

Kusk automates generation of resources for various ingress controllers by treating your OpenAPI Specification as the source of truth for configuration.

Open API
Kusk
Design-first
January 28, 2022
|
5 min
read

Kusk-gateway OpenAPI-Driven K8s Gateway Alpha 2

Kusk-gateway v0.0.0.alpha.2 was released today with lots of enhancements, new features and bug fixes.

Open API
Kusk
Design-first
November 29, 2021
|
1 min
read

Kusk-gateway OpenAPI-first K8s Ingress Controller

An Argument for using OpenAPI (Swagger) to configure Ingress in Kubernetes.

Open API
Kusk
Design-first
September 16, 2021
|
2 min
read

Kusk 0.2.0 released with Traefik support and more

Today the Kubeshop team released Kusk version 0.2.0 featuring Traefik V2 support, further improvements on x-kusk OpenAPI extension and…

Open API
Kusk
Design-first
September 15, 2021
|
4 min
read

Automate Configuration w/Kusk—a DevOps Design-First Approach to APIs

APIs are everywhere. APIs are a standardized way for applications to expose their functionality. API functionality often supersedes that…

Open API
Kusk
Design-first
September 14, 2021
|
3 min
read

Kusk: Configuring K8s Ingress Controller for CORS w/OpenAPI

Kusk: Configuring your Ingress Controller for CORS with OpenAPI

Open API
Kusk
Design-first
August 16, 2021
|
1 min
read

Hello Kusk—OpenAPI for Kubernetes

Hello Kusk: OpenAPI for Kubernetes

Open API
Kusk
Design-first

Stay in the Loop

Subscribe to stay up to date by getting the blog direct to your inbox

Or join the Kubeshop Community in one of these channels