3.5 KiB
title | description | menu | weight | ||||
---|---|---|---|---|---|---|---|
Bypass your identity provider | InfluxDB clustered generates a valid access token (known as the _admin token_) that can be used in development and testing environments in lieu of configuring and using an OAuth2 identity provider. |
|
209 |
{{< product-name >}} generates a valid access token (known as the admin token)
for managing databases and database tokens and stores it as a secret in your
InfluxDB namespace.
You can use the admin token with the influxctl
CLI
in lieu of configuring and using an OAuth2 identity provider.
{{% warn %}}
Do not use in production
This feature is for development and testing purposes only and should not be used in a production InfluxDB cluster. {{% /warn %}}
Configure influxctl to use the admin token
{{% code-placeholders "INFLUXDB_NAMESPACE|DIRECTORY_PATH" %}}
-
If you haven't already, download, install, or upgrade to
influxctl
v2.2.0 or newer. -
Use
kubectl
to retrieve the admin token from your cluster namespace's secret store and copy it to a file:kubectl get secrets/admin-token \ --template={{.data.token}} \ --namespace INFLUXDB_NAMESPACE | base64 -d > token.json
-
Update your
influxctl
connection profile with a new[profile.auth.token]
section. -
In the
[profile.auth.token]
section, assign thetoken_file
setting to the location of your saved admin token file:[[profile]] # ... [profile.auth.token] token_file = "/DIRECTORY_PATH/token.json"
{{% /code-placeholders %}}
In the examples above, replace the following:
- {{% code-placeholder-key %}}
INFLUXDB_NAMESPACE
{{% /code-placeholder-key %}}: The name of your InfluxDB namespace. - {{% code-placeholder-key %}}
DIRECTORY_PATH
{{% /code-placeholder-key %}}: The directory path to your admin token file,token.json
.
Revoke an admin token
The admin token is a long-lived access token. The only way to revoke the token is to do the following:
{{% code-placeholders "INFLUXDB_NAMESPACE|KEY_GEN_JOB|001" %}}
-
Delete the
rsa-keys
andadmin-token
secrets from your InfluxDB cluster's context and namespace:kubectl delete secret rsa-keys admin-token --namespace INFLUXDB_NAMESPACE
-
Rerun the
key-gen
andcreate-admin-token
jobs:-
List the jobs in your InfluxDB namespace to find the key-gen job pod:
# List jobs to find the key-gen job pod kubectl get jobs --namespace INFLUXDB_NAMESPACE
-
Delete the key-gen and create-admin-token jobs so they it will be re-created by kubit:
kubectl delete job/KEY_GEN_JOB job/CREATE_ADMIN_TOKEN_JOB \ --namespace INFLUXDB_NAMESPACE
-
-
Restart the
token-management
service:kubectl delete pods \ --selector app=token-management \ --namespace INFLUXDB_NAMESPACE
{{% /code-placeholders %}}
In the examples above, replace the following:
- {{% code-placeholder-key %}}
INFLUXDB_NAMESPACE
{{% /code-placeholder-key %}}: The name of your InfluxDB namespace. - {{% code-placeholder-key %}}
KEY_GEN_JOB
{{% /code-placeholder-key %}}: The name of the key-gen job pod.
{{% note %}}
To create a new admin token after revoking the existing one, rerun the
create-admin-token
job.
{{% /note %}}