列出密钥环。
包含此代码示例的文档页面
如需查看上下文中使用的代码示例,请参阅以下文档:
代码示例
C#
如需了解如何安装和使用 Cloud KMS 客户端库,请参阅 Cloud KMS 客户端库。
using Google.Api.Gax.ResourceNames;
using Google.Cloud.Kms.V1;
public class QuickstartSample
{
public void Quickstart(string projectId = "my-project", string locationId = "us-east1")
{
// Create a Cloud KMS client.
KeyManagementServiceClient client = KeyManagementServiceClient.Create();
// Build the parent location name.
LocationName locationName = new LocationName(projectId, locationId);
// Iterate over and print each key ring name;
foreach (KeyRing keyRing in client.ListKeyRings(locationName))
{
// ... (e.g. keyRing.Name)
}
}
}
Go
如需了解如何安装和使用 Cloud KMS 客户端库,请参阅 Cloud KMS 客户端库。
// Sample quickstart is a basic program that uses Cloud KMS.
package main
import (
"context"
"fmt"
"log"
kms "cloud.google.com/go/kms/apiv1"
"google.golang.org/api/iterator"
kmspb "google.golang.org/genproto/googleapis/cloud/kms/v1"
)
func main() {
// GCP project with which to communicate.
projectID := "your-project-id"
// Location in which to list key rings.
locationID := "global"
// Create the client.
ctx := context.Background()
client, err := kms.NewKeyManagementClient(ctx)
if err != nil {
log.Fatalf("failed to setup client: %v", err)
}
// Create the request to list KeyRings.
listKeyRingsReq := &kmspb.ListKeyRingsRequest{
Parent: fmt.Sprintf("projects/%s/locations/%s", projectID, locationID),
}
// List the KeyRings.
it := client.ListKeyRings(ctx, listKeyRingsReq)
// Iterate and print the results.
for {
resp, err := it.Next()
if err == iterator.Done {
break
}
if err != nil {
log.Fatalf("Failed to list key rings: %v", err)
}
fmt.Printf("key ring: %s\n", resp.Name)
}
}
Java
如需了解如何安装和使用 Cloud KMS 客户端库,请参阅 Cloud KMS 客户端库。
import com.google.cloud.kms.v1.KeyManagementServiceClient;
import com.google.cloud.kms.v1.KeyManagementServiceClient.ListKeyRingsPagedResponse;
import com.google.cloud.kms.v1.KeyRing;
import com.google.cloud.kms.v1.LocationName;
import java.io.IOException;
public class Quickstart {
public void quickstart() throws IOException {
// TODO(developer): Replace these variables before running the sample.
String projectId = "your-project-id";
String locationId = "us-east1";
quickstart(projectId, locationId);
}
public void quickstart(String projectId, String locationId) throws IOException {
// Initialize client that will be used to send requests. This client only
// needs to be created once, and can be reused for multiple requests. After
// completing all of your requests, call the "close" method on the client to
// safely clean up any remaining background resources.
try (KeyManagementServiceClient client = KeyManagementServiceClient.create()) {
// Build the parent from the project and location.
LocationName parent = LocationName.of(projectId, locationId);
// Call the API.
ListKeyRingsPagedResponse response = client.listKeyRings(parent);
// Iterate over each key ring and print its name.
System.out.println("key rings:");
for (KeyRing keyRing : response.iterateAll()) {
System.out.printf("%s%n", keyRing.getName());
}
}
}
}
Node.js
如需了解如何安装和使用 Cloud KMS 客户端库,请参阅 Cloud KMS 客户端库。
//
// TODO(developer): Uncomment these variables before running the sample.
//
// const projectId = 'my-project';
// const locationId = 'us-east1';
// Imports the Cloud KMS library
const {KeyManagementServiceClient} = require('@google-cloud/kms');
// Instantiates a client
const client = new KeyManagementServiceClient();
// Build the location name
const locationName = client.locationPath(projectId, locationId);
async function listKeyRings() {
const [keyRings] = await client.listKeyRings({
parent: locationName,
});
for (const keyRing of keyRings) {
console.log(keyRing.name);
}
return keyRings;
}
return listKeyRings();
PHP
如需了解如何安装和使用 Cloud KMS 客户端库,请参阅 Cloud KMS 客户端库。
use Google\Cloud\Kms\V1\KeyManagementServiceClient;
function quickstart_sample(
string $projectId = 'my-project',
string $locationId = 'us-east1'
) {
// Create the Cloud KMS client.
$client = new KeyManagementServiceClient();
// Build the parent location name.
$locationName = $client->locationName($projectId, $locationId);
// Call the API.
$keyRings = $client->listKeyRings($locationName);
// Example of iterating over key rings.
printf('Key rings in %s:' . PHP_EOL, $locationName);
foreach ($keyRings as $keyRing) {
printf('%s' . PHP_EOL, $keyRing->getName());
}
return $keyRings;
}
Python
如需了解如何安装和使用 Cloud KMS 客户端库,请参阅 Cloud KMS 客户端库。
def quickstart(project_id, location_id):
# Import the client library.
from google.cloud import kms
# Create the client.
client = kms.KeyManagementServiceClient()
# Build the parent location name.
location_name = f'projects/{project_id}/locations/{location_id}'
# Call the API.
key_rings = client.list_key_rings(request={'parent': location_name})
# Example of iterating over key rings.
for key_ring in key_rings:
print(key_ring.name)
return key_rings
Ruby
如需了解如何安装和使用 Cloud KMS 客户端库,请参阅 Cloud KMS 客户端库。
# TODO(developer): uncomment these values before running the sample.
# project_id = "my-project"
# location_id = "us-east1"
# Require the library.
require "google/cloud/kms"
# Create the client.
client = Google::Cloud::Kms.key_management_service
# Build the parent location name.
location_name = client.location_path project: project_id, location: location_id
# Call the API.
key_rings = client.list_key_rings parent: location_name
# Example of iterating over key rings.
puts "Key rings in #{location_name}"
key_rings.each do |key_ring|
puts key_ring.name.to_s
end
后续步骤
如需搜索和过滤其他 Google Cloud 产品的代码示例,请参阅 Google Cloud 示例浏览器