|
2 | 2 |
|
3 | 3 | ### NGINX `http` and `stream` servers
|
4 | 4 |
|
5 |
| -| Feature | API v4.1 | API v4.2 | Notes | |
6 |
| -|-----------------------------|-----------|----------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| |
7 |
| -| Upstreams | CRUD | CRUD | <li>Snippets supported: static and from source of truth</li> | |
8 |
| -| HTTP servers | CRUD | CRUD | <li>Snippets supported (`http`, `servers`, `locations`): static and from source of truth</li> | |
9 |
| -| TCP/UDP servers | CRUD | CRUD | <li>Snippets supported (`streams`, `servers`): static and from source of truth</li> | |
10 |
| -| TLS | CRUD | CRUD | <li>Certificates and keys can be dynamically fetched from source of truth</li> | |
11 |
| -| Client authentication | X | X | See [client authentication profiles](#Client-authentication-profiles) | |
12 |
| -| Server authentication | X | X | See [server authentication profiles](#Upstream-and-Source-of-truth-authentication-profiles) | |
13 |
| -| Rate limiting | X | X | | |
14 |
| -| Active healthchecks | X | X | | |
15 |
| -| Cookie-based stickiness | X | X | | |
16 |
| -| HTTP headers manipulation | | X | <li>To server: set, delete</li><li>To client: add, delete, replace</li> | |
17 |
| -| Maps | X | X | | |
18 |
| -| NGINX Plus REST API access | X | X | | |
19 |
| -| NGINX App Protect WAF | X | X | <li>Per-policy CRUD at `server` and `location` level</li><li>Support for dataplane-based bundle compilation</li><li>Security policies can be fetched from source of truth</li> | |
| 5 | +| Feature | API v4.1 | API v4.2 | Notes | |
| 6 | +|----------------------------|-----------|----------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| |
| 7 | +| Upstreams | CRUD | CRUD | <li>Snippets supported: static and from source of truth</li> | |
| 8 | +| HTTP servers | CRUD | CRUD | <li>Snippets supported (`http`, `servers`, `locations`): static and from source of truth</li> | |
| 9 | +| TCP/UDP servers | CRUD | CRUD | <li>Snippets supported (`streams`, `servers`): static and from source of truth</li> | |
| 10 | +| TLS | CRUD | CRUD | <li>Certificates and keys can be dynamically fetched from source of truth</li> | |
| 11 | +| Client authentication | X | X | See [client authentication](#Client-authentication) | |
| 12 | +| Upstream authentication | X | X | See [upstream and Source of truth authentication](#Upstream-and-Source-of-truth-authentication) | |
| 13 | +| Rate limiting | X | X | | |
| 14 | +| Active healthchecks | X | X | | |
| 15 | +| Cookie-based stickiness | X | X | | |
| 16 | +| HTTP headers manipulation | | X | <li>To server: set, delete</li><li>To client: add, delete, replace</li> | |
| 17 | +| Maps | X | X | | |
| 18 | +| NGINX Plus REST API access | X | X | | |
| 19 | +| NGINX App Protect WAF | X | X | <li>Per-policy CRUD at `server` and `location` level</li><li>Support for dataplane-based bundle compilation</li><li>Security policies can be fetched from source of truth</li> | |
20 | 20 |
|
21 | 21 | ### API Gateway
|
22 | 22 |
|
@@ -120,6 +120,7 @@ Client-side authorization profiles to be defined under `.declaration.http.author
|
120 | 120 | | Bearer token | Authentication token as Authorization Bearer | X | X | `Bearer` Authorization header is injected in requests to upstreams and source of truth |
|
121 | 121 | | Basic Auth | Authentication token as Authorization Basic | | X | `Basic` Authorization header is injected in requests to upstreams and source of truth |
|
122 | 122 | | HTTP header | Authentication token in custom HTTP header | X | X | HTTP header is injected in requests to upstreams and source of truth |
|
| 123 | +| mTLS | Mutual TLS | X | X | Client certificate is sent to upstream / source of truth | |
123 | 124 |
|
124 | 125 | #### Examples
|
125 | 126 |
|
@@ -166,6 +167,20 @@ Server-side authentication profiles to be defined under `.declaration.http.authe
|
166 | 167 | }
|
167 | 168 | ```
|
168 | 169 |
|
| 170 | +- mTLS authentication profile |
| 171 | + |
| 172 | +```json |
| 173 | +"server": [ |
| 174 | + { |
| 175 | + "name": "<PROFILE_NAME>", |
| 176 | + "type": "mtls", |
| 177 | + "mtls": { |
| 178 | + "certificate": "<CLIENT_CERTIFICATE>", |
| 179 | + "key": "<CLIENT_KEY>" |
| 180 | + } |
| 181 | + } |
| 182 | +``` |
| 183 | + |
169 | 184 | ### HTTP Headers manipulation
|
170 | 185 |
|
171 | 186 | | Type | API v4.1 | API v4.2 | Notes |
|
|
0 commit comments