You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Use the token as bearer token in the `Authorization` header when making requests to the API.
60
+
61
+
### OAuth
62
+
63
+
If you have OAuth enabled you can obtain a token from your provider that can be used to invoke the Uplink Client API.
64
+
65
+
The example uses the client credentials grant. Replace the token url, client id and client secret with the values obtained from your identity provider.
Every namespace created through the API will have the `inlets.dev/uplink=1` label set.
@@ -130,21 +231,49 @@ The API supports adding additional namespace labels and annotations:
130
231
131
232
```json
132
233
{
133
-
"name": "acmeco",
134
-
"annotations": {
135
-
"customer": "acmeco"
136
-
},
137
-
"labels": {
138
-
"customer": "acmeco"
139
-
}
234
+
"name": "acmeco",
235
+
"annotations": {
236
+
"customer": "acmeco"
237
+
},
238
+
"labels": {
239
+
"customer": "acmeco"
240
+
}
140
241
}
141
242
```
142
243
143
244
### Delete a namespace
144
245
145
246
```sh
247
+
export CLIENT_API="https://clienapi.example.com"
248
+
export NAME="acmeco"
249
+
146
250
curl -i \
147
-
-X DELETE \
148
-
-H "Authorization: Bearer ${TOKEN}"\
149
-
"$CLIENT_API/v1/namespace/$NAME"
150
-
```
251
+
-X DELETE \
252
+
-H "Authorization: Bearer ${TOKEN}" \
253
+
"$CLIENT_API/v1/namespace/$NAME"
254
+
```
255
+
256
+
## Configure OAuth
257
+
258
+
You can configure any OpenID Connect (OIDC) compatible identity provider for use with Inlets Uplink.
259
+
260
+
1. Register a new client (application) for Inlets Uplink with your identity provider.
261
+
2. Enable the required authentication flows.
262
+
The Client Credentials flow is ideal for serve-to-server interactions where there is no direct user involvement. This is the flow we recommend and use in our examples any other authentication flow can be picked depending on your use case.
263
+
3. Configure Client API
264
+
265
+
Update your `values.yaml` file and add to following parameters to the `clientApi` section:
266
+
267
+
```yaml
268
+
clientApi:
269
+
# OIDC provider url.
270
+
issuerURL: "https://myprovider.example.com"
271
+
272
+
# The audience is generally the same as the value of the domain field, however
273
+
# some issuers like keycloak make the audience the client_id of the application/client.
274
+
audience: "clienapi.example.com"
275
+
```
276
+
277
+
The `issuerURL` needs to be set to the url of your provider, eg. `https://accounts.google.com` for google or `https://example.eu.auth0.com/` for Auth0.
278
+
279
+
The `audience` is usually the client apis public URL although for some providers it can also be the client id.
0 commit comments