绕过您的身份提供者
InfluxDB 集群生成一个有效的访问令牌(称为 管理员令牌),用于管理数据库和数据库令牌,并将其作为密钥存储在您的 InfluxDB 命名空间中。您可以使用管理员令牌与 influxctl CLI 代替配置和使用 OAuth2 身份提供者。
请勿在生产环境中使用
此功能仅用于开发和测试目的,不应在生产环境的InfluxDB集群中使用。
配置 influxctl 以使用管理员令牌
如果您尚未这样做,下载、安装或升级到
influxctlv2.2.0 或更新版本。使用
kubectl从您的集群命名空间的秘密存储中检索管理员令牌并将其复制到文件中:kubectl get secrets/admin-token \ --template={{.data.token}} \ --namespaceINFLUXDB_NAMESPACE| base64 -d > token.json使用新的
[profile.auth.token]部分更新您的influxctl连接配置文件。在
[profile.auth.token]部分,将token_file设置为您保存的管理员令牌文件的位置:[[profile]] # ... [profile.auth.token] token_file = "/DIRECTORY_PATH/token.json"
在上面的示例中,替换以下内容:
INFLUXDB_NAMESPACE: 您的 InfluxDB 命名空间的名称。DIRECTORY_PATH: 您管理员令牌文件的目录路径,token.json。
撤销管理员令牌
管理员令牌是一个长期有效的访问令牌。
撤销令牌的唯一方法是执行以下操作:
从您的 InfluxDB 集群的上下文和名称空间中删除
rsa-keys和admin-token秘密:kubectl delete secret rsa-keys admin-token --namespaceINFLUXDB_NAMESPACE重新运行
key-gen和create-amin-token任务:列出您的 InfluxDB 命名空间中的作业,以找到 key-gen 作业 pod:
# List jobs to find the key-gen job pod kubectl get jobs --namespaceINFLUXDB_NAMESPACE删除key-gen和create-admin-token作业,以便它们将被kubit重新创建:
kubectl delete job/KEY_GEN_JOBjob/CREATE_ADMIN_TOKEN_JOB \ --namespaceINFLUXDB_NAMESPACE
重启
token-management服务:kubectl delete pods \ --selector app=token-management \ --namespaceINFLUXDB_NAMESPACE
在上面的示例中,替换以下内容:
INFLUXDB_NAMESPACE: 您的 InfluxDB 名称空间的名称。KEY_GEN_JOB: 密钥生成作业 pod 的名称。
在撤销现有管理员令牌后,要创建一个新的管理员令牌,请重新运行 create-admin-token 作业。