MCP Tools Reference: cloud-sql

Herramienta: list_users

Enumera todos los usuarios de la base de datos de una instancia de Cloud SQL.

En el siguiente ejemplo, se muestra cómo usar curl para invocar la herramienta de MCP list_users.

Solicitud de Curl
                  
curl --location 'https://sqladmin.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "list_users",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

Esquema de entrada

SqlUsersListRequest

Representación JSON
{
  "instance": string,
  "project": string
}
Campos
instance

string

El ID de instancia de la base de datos. Esto no incluye el ID del proyecto.

project

string

El ID del proyecto que contiene la instancia.

Esquema de salida

Es la respuesta de la lista de usuarios.

UsersListResponse

Representación JSON
{
  "kind": string,
  "items": [
    {
      object (User)
    }
  ],
  "nextPageToken": string
}
Campos
kind

string

Siempre es sql#usersList.

items[]

object (User)

Es la lista de recursos del usuario en la instancia.

nextPageToken
(deprecated)

string

No usuado.

Usuario

Representación JSON
{
  "kind": string,
  "password": string,
  "etag": string,
  "name": string,
  "host": string,
  "instance": string,
  "project": string,
  "type": enum (SqlUserType),
  "iamEmail": string,
  "passwordPolicy": {
    object (UserPasswordValidationPolicy)
  },
  "databaseRoles": [
    string
  ],

  // Union field user_details can be only one of the following:
  "sqlserverUserDetails": {
    object (SqlServerUserDetails)
  }
  // End of list of possible types for union field user_details.

  // Union field _dual_password_type can be only one of the following:
  "dualPasswordType": enum (DualPasswordType)
  // End of list of possible types for union field _dual_password_type.

  // Union field _iam_status can be only one of the following:
  "iamStatus": enum (IamStatus)
  // End of list of possible types for union field _iam_status.
}
Campos
kind

string

Siempre es sql#user.

password

string

Contraseña del usuario.

etag

string

Este campo está obsoleto y se quitará en una versión futura de la API.

name

string

Es el nombre del usuario en la instancia de Cloud SQL. Se puede omitir para update porque ya se especificó en la URL.

host

string

Es opcional. Es el host desde el que el usuario puede conectarse. Para las operaciones de insert, el host se establece de forma predeterminada en una cadena vacía. En el caso de las operaciones update, el host se especifica como parte de la URL de la solicitud. El nombre de host no se puede actualizar después de la inserción. Es obligatorio para una instancia de MySQL y opcional para una instancia de PostgreSQL o SQL Server.

instance

string

Es el nombre de la instancia de Cloud SQL. Esto no incluye el ID del proyecto. Se puede omitir para update porque ya se especificó en la URL.

project

string

Es el ID del proyecto que contiene la base de datos de Cloud SQL. El dominio de las apps de Google tiene un prefijo si corresponde. Se puede omitir para update porque ya se especificó en la URL.

type

enum (SqlUserType)

Es el tipo de usuario. Determina el método para autenticar al usuario durante el acceso. El valor predeterminado es el tipo de usuario integrado de la base de datos.

iamEmail

string

Es opcional. Es el correo electrónico completo de un usuario de IAM. En el caso de los usuarios normales de la base de datos, este campo no se completará. Solo se aplica a los usuarios de bases de datos de MySQL.

passwordPolicy

object (UserPasswordValidationPolicy)

Política de validación de contraseñas a nivel del usuario.

databaseRoles[]

string

Es opcional. Membresías de roles del usuario

Campo de unión user_details. Los detalles del usuario para el tipo de base de datos específico user_details pueden ser solo uno de los siguientes:
sqlserverUserDetails

object (SqlServerUserDetails)

Campo de unión _dual_password_type.

_dual_password_type puede ser una de las siguientes opciones:

dualPasswordType

enum (DualPasswordType)

Es el estado de la contraseña doble para el usuario.

Campo de unión _iam_status.

_iam_status puede ser una de las siguientes opciones:

iamStatus

enum (IamStatus)

Indica si un grupo está activo o inactivo para la autenticación de la base de datos de IAM.

SqlServerUserDetails

Representación JSON
{
  "disabled": boolean,
  "serverRoles": [
    string
  ]
}
Campos
disabled

boolean

Si se inhabilitó al usuario

serverRoles[]

string

Roles del servidor para este usuario

UserPasswordValidationPolicy

Representación JSON
{
  "allowedFailedAttempts": integer,
  "passwordExpirationDuration": string,
  "enableFailedAttemptsCheck": boolean,
  "status": {
    object (PasswordStatus)
  },
  "enablePasswordVerification": boolean
}
Campos
allowedFailedAttempts

integer

Cantidad de intentos de acceso fallidos permitidos antes de que se bloquee al usuario.

passwordExpirationDuration

string (Duration format)

Es la duración del vencimiento después de que se actualiza la contraseña.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

enableFailedAttemptsCheck

boolean

Si es verdadero, se habilitará la verificación de intentos de acceso fallidos.

status

object (PasswordStatus)

Solo salida. Es el estado de la contraseña de solo lectura.

enablePasswordVerification

boolean

Si es verdadero, el usuario debe especificar la contraseña actual antes de cambiarla. Esta marca solo es compatible con MySQL.

Duración

Representación JSON
{
  "seconds": string,
  "nanos": integer
}
Campos
seconds

string (int64 format)

Son los segundos firmados del período. Debe estar entre -315,576,000,000 y +315,576,000,000, inclusive. Nota: Estos límites se calculan de la siguiente manera: 60 s/min * 60 min/h * 24 h/día * 365.25 días/año * 10,000 años.

nanos

integer

Fracciones firmadas de un segundo con una resolución de nanosegundos del período. Las duraciones inferiores a un segundo se representan con un campo seconds igual a 0 y un campo nanos positivo o negativo. Para duraciones de un segundo o más, un valor distinto de cero para el campo nanos debe tener el mismo signo que el campo seconds. Debe ser un valor entre -999,999,999 y +999,999,999, inclusive.

PasswordStatus

Representación JSON
{
  "locked": boolean,
  "passwordExpirationTime": string
}
Campos
locked

boolean

Si es verdadero, el usuario no tiene privilegios de acceso.

passwordExpirationTime

string (Timestamp format)

Es la fecha y hora de vencimiento de la contraseña actual.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

Marca de tiempo

Representación JSON
{
  "seconds": string,
  "nanos": integer
}
Campos
seconds

string (int64 format)

Representa los segundos de la hora UTC desde la época de Unix 1970-01-01T00:00:00Z. Debe estar entre -62135596800 y 253402300799 inclusive (lo que corresponde a 0001-01-01T00:00:00Z a 9999-12-31T23:59:59Z).

nanos

integer

Fracciones no negativas de un segundo a una resolución de nanosegundos. Este campo es la parte de la duración en nanosegundos, no una alternativa a los segundos. Los valores de segundos negativos con fracciones deben tener valores nanos no negativos que se cuentan hacia adelante en el tiempo. Debe ser un valor entre 0 y 999,999,999, inclusive.

Anotaciones de herramientas

Sugerencia destructiva: ❌ | Sugerencia idempotente: ❌ | Sugerencia de solo lectura: ✅ | Sugerencia de mundo abierto: ❌