[Bug] A scoped token can end up with no name in the listing used to revoke it

Abierto
#67 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
48/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
go
Área
cli, security

Línea de trabajo

Start by locating the implementations or help definitions for generate-file-system-token, generate-file-system-scoped-token, and list-file-system-tokens. Compare how --token-name and --subject reach the listing's NAME column, then decide on a consistent naming behavior or documented requirement. Re-run the listed commands in text and JSON modes; done means scoped tokens are identifiable and the help explains the required input.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

ti version

0.2.7 (6c950c77a601d0d55394c4b2f64483ae93d522db, 2026-09-27), bundled ti-drive9 companion 60b63d6

Command family

fs

Operating system and architecture

macOS 14.6, darwin/arm64

Summary

The two token commands name a token through different flags, with different requirements, and
both land in the same NAME column. A scoped token created without the optional flag has no
name at all in the listing an operator uses to find the token they want to revoke.

Covers observation 8 from a review of the TiDB Cloud Filesystem documentation.

The difference

generate-file-system-token takes --token-name, described in help as "An operational name
for the token". It is required.

generate-file-system-scoped-token has no --token-name. It has --subject, described in
help as "Optional server-side audit label". It is optional.

Command

ti fs generate-file-system-token --file-system-id "<fs-id>" --token-name owner1 --no-expiration
ti fs generate-file-system-scoped-token --file-system-id "<fs-id>" --ttl 30m --allow "/reports:read,list"
ti fs list-file-system-tokens --file-system-id "<fs-id>" --output text

Reproduction steps

  1. Generate an owner token with --token-name owner1.
  2. Generate a scoped token without passing --subject.
  3. Run ti fs list-file-system-tokens --output text.
  4. Run the same command with --output json.

Expected behavior

Either both commands name a token the same way, or the scoped command's help states that
--subject fills the NAME column, so an operator knows to set it.

Actual behavior

TOKEN_ID                              NAME     SCOPE      STATUS  EXPIRES_AT
c6bdb91f-7b09-4a6d-a01d-dd5e108d927f  default  owner      active  never
aea96970-11bf-44fd-bde7-95d0767d46be           fs_scoped  active  2026-09-28T04:11:11Z
af7bcbce-15a3-4069-94e9-1dfc13aaf2e3  owner1   owner      active  never

The scoped token's NAME column is blank, and token_name is an empty string in the JSON.
The owner token shows its name. An operator looking at the listing has no way to tell which
scoped token is which, which matters because this listing is how you find the token_id to
pass to disable-file-system-token or delete-file-system-token.

Suggested resolution

Either give generate-file-system-scoped-token a --token-name of its own, or document that
--subject doubles as the operational name and recommend setting it.

This one is partly a naming decision rather than a defect, so the docs fix depends on which
way you want it to work.

Sensitive-data confirmation

No API keys, file system or Vault tokens, database credentials, connection strings, SQL, or
customer data appear above. File systems used for these measurements were deleted afterwards.

Lenguaje dominante
Go
Estrellas
3
Forks
4
Merge medio
3 d 19 h
PR fusionados (30 d)
5

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de tidbcloud/ti-cli

Todos los issues de tidbcloud/ti-cli

Issues similares

Más issues de Go

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.