Method: instances.listServerCas

Lists all of the trusted Certificate Authorities (CAs) for the specified instance. There can be up to three CAs listed: the CA that was used to sign the certificate that is currently in use, a CA that has been added but not yet used to sign a certificate, and a CA used to sign a certificate that has previously rotated out.

HTTP request

GET https://sqladmin.googleapis.com/sql/v1beta4/projects/{project}/instances/{instance}/listServerCas

The URL uses gRPC Transcoding syntax.

Path parameters

Parameters
project

string

Project ID of the project that contains the instance.

instance

string

Cloud SQL instance ID. This does not include the project ID.

Request body

The request body must be empty.

Response body

If successful, the response body contains data with the following structure:

Instances instances.listServerCas response.

JSON representation
{
  "certs": [
    {
      object (SslCert)
    }
  ],
  "activeVersion": string,
  "kind": string
}
Fields
certs[]

object (SslCert)

instances.list of server CA certificates for the instance.

activeVersion

string

kind

string

This is always sql#instancesListServerCas.

Authorization Scopes

Requires one of the following OAuth scopes:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/sqlservice.admin

For more information, see the Authentication Overview.

Examples

Uses the .NET client library.

// BEFORE RUNNING:
// ---------------
// 1. If not already done, enable the Cloud SQL Administration API
//    and check the quota for your project at
//    https://console.developers.google.com/apis/api/sqladmin
// 2. This sample uses Application Default Credentials for authentication.
//    If not already done, install the gcloud CLI from
//    https://cloud.google.com/sdk and run
//    `gcloud beta auth application-default login`.
//    For more information, see
//    https://developers.google.com/identity/protocols/application-default-credentials
// 3. Install the C# client library by adding a dependency on the relevant NuGet
//    package. Libraries published by Google are owned by google-apis-packages:
//    https://www.nuget.org/profiles/google-apis-packages

using Google.Apis.Auth.OAuth2;
using Google.Apis.SQLAdmin.v1beta4;
using Google.Apis.Services;
using Newtonsoft.Json;
using System;
using System.Threading.Tasks;

using Data = Google.Apis.SQLAdmin.v1beta4.Data;

namespace SQLAdminSample
{
   
public class SQLAdminExample
   
{
       
public static void Main(string[] args)
       
{
           
SQLAdminService sqlAdminService = new SQLAdminService(new BaseClientService.Initializer
           
{
               
HttpClientInitializer = GetCredential(),
               
ApplicationName = "Google-SQLAdminSample/0.1",
           
});

           
// Project ID of the project that contains the instance.
           
string project = "my-project";  // TODO: Update placeholder value.

           
// Cloud SQL instance ID. This does not include the project ID.
           
string instance = "my-instance";  // TODO: Update placeholder value.

           
InstancesResource.ListServerCasRequest request = sqlAdminService.Instances.ListServerCas(project, instance);

           
// To execute asynchronously in an async method, replace `request.Execute()` as shown:
           
Data.InstancesListServerCasResponse response = request.Execute();
           
// Data.InstancesListServerCasResponse response = await request.ExecuteAsync();

           
// TODO: Change code below to process the `response` object:
           
Console.WriteLine(JsonConvert.SerializeObject(response));
       
}

       
public static GoogleCredential GetCredential()
       
{
           
GoogleCredential credential = Task.Run(() => GoogleCredential.GetApplicationDefaultAsync()).Result;
           
if (credential.IsCreateScopedRequired)
           
{
                credential
= credential.CreateScoped("https://www.googleapis.com/auth/cloud-platform");
           
}
           
return credential;
       
}
   
}
}

Uses the Go client library.

package main

// BEFORE RUNNING:
// ---------------
// 1. If not already done, enable the Cloud SQL Administration API
//    and check the quota for your project at
//    https://console.developers.google.com/apis/api/sqladmin
// 2. This sample uses Application Default Credentials for authentication.
//    If not already done, install the gcloud CLI from
//    https://cloud.google.com/sdk/ and run
//    `gcloud beta auth application-default login`.
//    For more information, see
//    https://developers.google.com/identity/protocols/application-default-credentials
// 3. Install and update the Go dependencies by running `go get -u` in the
//    project directory.

import (
       
"fmt"
       
"log"

       
"golang.org/x/net/context"
       
"golang.org/x/oauth2/google"
       
"google.golang.org/api/sqladmin/v1beta4"
)

func main
() {
        ctx
:= context.Background()

        c
, err := google.DefaultClient(ctx, sqladmin.CloudPlatformScope)
       
if err != nil {
                log
.Fatal(err)
       
}

        sqladminService
, err := sqladmin.New(c)
       
if err != nil {
                log
.Fatal(err)
       
}

       
// Project ID of the project that contains the instance.
        project
:= "my-project" // TODO: Update placeholder value.

       
// Cloud SQL instance ID. This does not include the project ID.
        instance
:= "my-instance" // TODO: Update placeholder value.

        resp
, err := sqladminService.Instances.ListServerCas(project, instance).Context(ctx).Do()
       
if err != nil {
                log
.Fatal(err)
       
}

       
// TODO: Change code below to process the `resp` object:
        fmt
.Printf("%#v\n", resp)
}

Uses the Node.js client library.

// BEFORE RUNNING:
// ---------------
// 1. If not already done, enable the Cloud SQL Admin API
//    and check the quota for your project at
//    https://console.developers.google.com/apis/api/sqladmin
// 2. This sample uses Application Default Credentials for authentication.
//    If not already done, install the gcloud CLI from
//    https://cloud.google.com/sdk and run
//    `gcloud beta auth application-default login`.
//    For more information, see
//    https://developers.google.com/identity/protocols/application-default-credentials
// 3. Install the Node.js client library by running
//    `npm install googleapis --save`

const {google} = require('googleapis');
var sqlAdmin = google.sqladmin('v1beta4');

authorize
(function(authClient) {
 
var request = {
   
// Project ID of the project that contains the instance.
    project
: 'my-project',  // TODO: Update placeholder value.

   
// Cloud SQL instance ID. This does not include the project ID.
    instance
: 'my-instance',  // TODO: Update placeholder value.

    auth
: authClient,
 
};

  sqlAdmin
.instances.listServerCas(request, function(err, response) {
   
if (err) {
      console
.error(err);
     
return;
   
}

   
// TODO: Change code below to process the `response` object:
    console
.log(JSON.stringify(response, null, 2));
 
});
});

function authorize(callback) {
  google
.auth.getClient({
    scopes
: ['https://www.googleapis.com/auth/cloud-platform']
 
}).then(client => {
    callback
(client);
 
}).catch(err => {
    console
.error('authentication failed: ', err);
 
});
}

Uses the Python client library.

"""
BEFORE RUNNING:
---------------
1. If not already done, enable the Cloud SQL Administration API
   and check the quota for your project at
   https://console.developers.google.com/apis/api/sqladmin
2. This sample uses Application Default Credentials for authentication.
   If not already done, install the gcloud CLI from
   https://cloud.google.com/sdk and run
   `gcloud beta auth application-default login`.
   For more information, see
   https://developers.google.com/identity/protocols/application-default-credentials
3. Install the Python client library for Google APIs by running
   `pip install --upgrade google-api-python-client`
"""

from pprint import pprint

from googleapiclient import discovery
from oauth2client.client import GoogleCredentials

credentials
= GoogleCredentials.get_application_default()

service
= discovery.build('sqladmin', 'v1beta4', credentials=credentials)

# Project ID of the project that contains the instance.
project
= 'my-project'  # TODO: Update placeholder value.

# Cloud SQL instance ID. This does not include the project ID.
instance
= 'my-instance'  # TODO: Update placeholder value.

request
= service.instances().listServerCas(project=project, instance=instance)
response
= request.execute()

# TODO: Change code below to process the `response` dict:
pprint
(response)