MCP Tools Reference: cloud-sql

Outil : list_users

Répertorie tous les utilisateurs de base de données pour une instance Cloud SQL.

L'exemple suivant montre comment utiliser curl pour appeler l'outil MCP list_users.

Requête 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
}'
                

Schéma d'entrée

SqlUsersListRequest

Représentation JSON
{
  "instance": string,
  "project": string
}
Champs
instance

string

ID de l'instance de base de données. Ce paramètre n'inclut pas l'ID du projet.

project

string

ID du projet contenant l'instance.

Schéma de sortie

Réponse contenant la liste des utilisateurs.

UsersListResponse

Représentation JSON
{
  "kind": string,
  "items": [
    {
      object (User)
    }
  ],
  "nextPageToken": string
}
Champs
kind

string

Cette valeur est toujours définie sur sql#usersList.

items[]

object (User)

Liste des ressources utilisateur dans l'instance.

nextPageToken
(deprecated)

string

Non utilisé.

Utilisateur

Représentation 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.
}
Champs
kind

string

Cette valeur est toujours définie sur sql#user.

password

string

Mot de passe de l'utilisateur.

etag

string

Ce champ est obsolète et sera supprimé dans une version ultérieure de l'API.

name

string

Nom de l'utilisateur dans l'instance Cloud SQL. Peut être omis pour update, car il est déjà spécifié dans l'URL.

host

string

Facultatif. Hôte à partir duquel l'utilisateur peut se connecter. Pour les opérations insert, l'hôte utilise par défaut une chaîne vide. Pour les opérations update, l'hôte est spécifié dans l'URL de la requête. Le nom d'hôte ne peut pas être mis à jour après l'insertion. Elle est obligatoire pour une instance MySQL, mais facultative pour une instance PostgreSQL ou SQL Server.

instance

string

Nom de l'instance Cloud SQL. Ce paramètre n'inclut pas l'ID du projet. Peut être omis pour update, car il est déjà spécifié dans l'URL.

project

string

ID du projet contenant la base de données Cloud SQL. Le domaine Google Apps est préfixé, le cas échéant. Peut être omis pour update, car il est déjà spécifié dans l'URL.

type

enum (SqlUserType)

Type d'utilisateur. Elle détermine la méthode d'authentification de l'utilisateur lors de la connexion. La valeur par défaut est le type d'utilisateur intégré de la base de données.

iamEmail

string

Facultatif. Adresse e-mail complète d'un utilisateur IAM. Pour les utilisateurs de base de données normaux, ce champ ne sera pas renseigné. Cela ne s'applique qu'aux utilisateurs de bases de données MySQL.

passwordPolicy

object (UserPasswordValidationPolicy)

Règles de validation des mots de passe au niveau de l'utilisateur.

databaseRoles[]

string

Facultatif. Appartenances aux rôles de l'utilisateur

Champ d'union user_details. Les informations détaillées sur l'utilisateur pour un type de base de données spécifique user_details ne peuvent correspondre qu'à l'un des objets suivants :
sqlserverUserDetails

object (SqlServerUserDetails)

Champ d'union _dual_password_type.

_dual_password_type ne peut être qu'un des éléments suivants :

dualPasswordType

enum (DualPasswordType)

État du double mot de passe pour l'utilisateur.

Champ d'union _iam_status.

_iam_status ne peut être qu'un des éléments suivants :

iamStatus

enum (IamStatus)

Indique si un groupe est actif ou inactif pour l'authentification IAM pour les bases de données.

SqlServerUserDetails

Représentation JSON
{
  "disabled": boolean,
  "serverRoles": [
    string
  ]
}
Champs
disabled

boolean

Si l'utilisateur a été désactivé

serverRoles[]

string

Rôles de serveur pour cet utilisateur

UserPasswordValidationPolicy

Représentation JSON
{
  "allowedFailedAttempts": integer,
  "passwordExpirationDuration": string,
  "enableFailedAttemptsCheck": boolean,
  "status": {
    object (PasswordStatus)
  },
  "enablePasswordVerification": boolean
}
Champs
allowedFailedAttempts

integer

Nombre de tentatives de connexion infructueuses autorisées avant le verrouillage de l'utilisateur.

passwordExpirationDuration

string (Duration format)

Durée d'expiration après la modification du mot de passe.

Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par "s". Exemple : "3.5s"

enableFailedAttemptsCheck

boolean

Si la valeur est "true", la vérification des tentatives de connexion infructueuses sera activée.

status

object (PasswordStatus)

Uniquement en sortie. État du mot de passe en lecture seule.

enablePasswordVerification

boolean

Si la valeur est "true", l'utilisateur doit spécifier le mot de passe actuel avant de le modifier. Cette option n'est compatible qu'avec MySQL.

Durée

Représentation JSON
{
  "seconds": string,
  "nanos": integer
}
Champs
seconds

string (int64 format)

Secondes signées de la durée. La valeur doit être comprise entre -315 576 000 000 et +315 576 000 000 (inclus). Remarque : Ces limites sont calculées à partir de : 60 s/min * 60 min/h * 24 h/jour * 365,25 jours/an * 10 000 ans

nanos

integer

Fractions de secondes signées avec une précision de l'ordre de la nanoseconde pour la durée. Les durées inférieures à une seconde sont représentées par un champ seconds égal à 0 et un champ nanos positif ou négatif. Pour les durées d'une seconde ou plus, une valeur non nulle pour le champ nanos doit avoir le même signe que le champ seconds. La valeur doit être comprise entre -999 999 999 et +999 999 999 inclus.

PasswordStatus

Représentation JSON
{
  "locked": boolean,
  "passwordExpirationTime": string
}
Champs
locked

boolean

Si la valeur est "true", l'utilisateur ne dispose pas de droits de connexion.

passwordExpirationTime

string (Timestamp format)

Délai d'expiration du mot de passe actuel.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

Horodatage

Représentation JSON
{
  "seconds": string,
  "nanos": integer
}
Champs
seconds

string (int64 format)

Représente les secondes de l'heure UTC à partir de l'epoch Unix 1970-01-01T00:00:00Z. La valeur doit être comprise entre -62135596800 et 253402300799 inclus (ce qui correspond à 0001-01-01T00:00:00Z et 9999-12-31T23:59:59Z).

nanos

integer

Fractions de secondes non négatives avec une précision de l'ordre de la nanoseconde. Ce champ correspond à la partie en nanosecondes de la durée, et non à une alternative aux secondes. Les valeurs de secondes négatives avec des fractions doivent toujours comporter des valeurs de nanosecondes non négatives comptabilisées dans le temps. La valeur doit être comprise entre 0 et 999 999 999 inclus.

Annotations d'outils

Indication de destruction : ❌ | Indication d'idempotence : ❌ | Indication de lecture seule : ✅ | Indication de monde ouvert : ❌