MCP Tools Reference: cloud-sql

도구: list_users

Cloud SQL 인스턴스의 모든 데이터베이스 사용자를 나열합니다.

다음 샘플은 curl를 사용하여 list_users MCP 도구를 호출하는 방법을 보여줍니다.

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
}'
                

입력 스키마

SqlUsersListRequest

JSON 표현
{
  "instance": string,
  "project": string
}
필드
instance

string

데이터베이스 인스턴스 ID입니다. 여기에는 프로젝트 ID가 포함되지 않습니다.

project

string

인스턴스가 포함된 프로젝트의 프로젝트 ID입니다.

출력 스키마

사용자 목록 응답

UsersListResponse

JSON 표현
{
  "kind": string,
  "items": [
    {
      object (User)
    }
  ],
  "nextPageToken": string
}
필드
kind

string

항상 sql#usersList입니다.

items[]

object (User)

인스턴스의 사용자 리소스 목록입니다.

nextPageToken
(deprecated)

string

사용되지 않습니다.

사용자

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.
}
필드
kind

string

항상 sql#user입니다.

password

string

사용자의 비밀번호입니다.

etag

string

이 필드는 지원 중단되었으며 이후 버전의 API에서 제거됩니다.

name

string

Cloud SQL 인스턴스의 사용자 이름입니다. URL에 이미 지정되어 있으므로 update에 대해 생략할 수 있습니다.

host

string

선택사항입니다. 사용자가 연결할 수 있는 호스트입니다. insert 작업의 경우 호스트는 기본적으로 빈 문자열입니다. update 작업의 경우 호스트는 요청 URL의 일부로 지정됩니다. 삽입 후에는 호스트 이름을 업데이트할 수 없습니다. MySQL 인스턴스의 경우 필수이고 PostgreSQL 또는 SQL Server 인스턴스의 경우 선택사항입니다.

instance

string

Cloud SQL 인스턴스의 이름입니다. 여기에는 프로젝트 ID가 포함되지 않습니다. URL에 이미 지정되어 있으므로 update에 대해 생략할 수 있습니다.

project

string

Cloud SQL 데이터베이스가 포함된 프로젝트의 프로젝트 ID입니다. 해당하는 경우 Google 앱 도메인이 프리픽스로 지정됩니다. URL에 이미 지정되어 있으므로 update에 대해 생략할 수 있습니다.

type

enum (SqlUserType)

사용자 유형입니다. 로그인 중에 사용자를 인증하는 방법을 결정합니다. 기본값은 데이터베이스의 기본 제공 사용자 유형입니다.

iamEmail

string

선택사항입니다. IAM 사용자의 전체 이메일입니다. 일반 데이터베이스 사용자의 경우 이 필드가 채워지지 않습니다. MySQL 데이터베이스 사용자에게만 적용됩니다.

passwordPolicy

object (UserPasswordValidationPolicy)

사용자 수준 비밀번호 유효성 검사 정책입니다.

databaseRoles[]

string

선택사항입니다. 사용자의 역할 멤버십

통합 필드 user_details. 특정 데이터베이스 유형 user_details의 사용자 세부정보는 다음 중 하나일 수 있습니다.
sqlserverUserDetails

object (SqlServerUserDetails)

통합 필드 _dual_password_type.

_dual_password_type는 다음 중 하나여야 합니다.

dualPasswordType

enum (DualPasswordType)

사용자의 이중 비밀번호 상태입니다.

통합 필드 _iam_status.

_iam_status는 다음 중 하나여야 합니다.

iamStatus

enum (IamStatus)

그룹이 IAM 데이터베이스 인증에 대해 활성 상태인지 비활성 상태인지를 나타냅니다.

SqlServerUserDetails

JSON 표현
{
  "disabled": boolean,
  "serverRoles": [
    string
  ]
}
필드
disabled

boolean

사용자가 사용 중지된 경우

serverRoles[]

string

이 사용자의 서버 역할

UserPasswordValidationPolicy

JSON 표현
{
  "allowedFailedAttempts": integer,
  "passwordExpirationDuration": string,
  "enableFailedAttemptsCheck": boolean,
  "status": {
    object (PasswordStatus)
  },
  "enablePasswordVerification": boolean
}
필드
allowedFailedAttempts

integer

사용자가 잠기기 전에 허용되는 로그인 실패 시도 횟수입니다.

passwordExpirationDuration

string (Duration format)

비밀번호가 업데이트된 후 만료 기간입니다.

소수점 아래가 최대 9자리까지이고 's'로 끝나는 초 단위 기간입니다. 예를 들면 "3.5s"입니다.

enableFailedAttemptsCheck

boolean

true인 경우 실패한 로그인 시도 확인이 사용 설정됩니다.

status

object (PasswordStatus)

출력 전용입니다. 읽기 전용 비밀번호 상태입니다.

enablePasswordVerification

boolean

true인 경우 사용자는 비밀번호를 변경하기 전에 현재 비밀번호를 지정해야 합니다. 이 플래그는 MySQL에서만 지원됩니다.

기간

JSON 표현
{
  "seconds": string,
  "nanos": integer
}
필드
seconds

string (int64 format)

시간 범위의 부호가 있는 초입니다. -315,576,000,000~+315,576,000,000(포함) 사이여야 합니다. 참고: 이 범위는 60초/분 * 60분/시간 * 24시간/일 * 365.25일/년 * 10,000년에서 계산됩니다.

nanos

integer

시간 범위의 나노초 단위로 된 부호가 있는 초수입니다. 1초 미만의 기간은 0 seconds 필드와 양수 또는 음수 nanos 필드로 표현됩니다. 1초 이상의 기간의 경우 nanos 필드의 0이 아닌 값은 seconds 필드와 부호가 같아야 합니다. -999,999,999~+999,999,999(포함) 사이여야 합니다.

PasswordStatus

JSON 표현
{
  "locked": boolean,
  "passwordExpirationTime": string
}
필드
locked

boolean

true인 경우 사용자에게 로그인 권한이 없습니다.

passwordExpirationTime

string (Timestamp format)

현재 비밀번호의 만료 시간입니다.

생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" 또는 "2014-10-02T15:01:23+05:30"입니다.

타임스탬프

JSON 표현
{
  "seconds": string,
  "nanos": integer
}
필드
seconds

string (int64 format)

Unix epoch 1970-01-01T00:00:00Z 이후 UTC 시간의 초 단위로 표현합니다. -62135596800~253402300799 (0001-01-01T00:00:00Z~9999-12-31T23:59:59Z) 사이여야 합니다.

nanos

integer

나노초 단위의 음수가 아닌 초수입니다. 이 필드는 기간의 나노초 부분이며 초의 대안이 아닙니다. 음수의 초수 값에는 시간에 반영되는 음수가 아닌 나노초 값이 있어야 합니다. 0~999,999,999(포함) 사이여야 합니다.

도구 주석

파괴적 힌트: ❌ | 동일한 힌트: ❌ | 읽기 전용 힌트: ✅ | 오픈 월드 힌트: ❌