使用 ETag 停用密鑰
透過集合功能整理內容
你可以依據偏好儲存及分類內容。
說明如何停用含有 ETag 的特定密鑰版本。
程式碼範例
Go
如要瞭解如何安裝及使用 Secret Manager 的用戶端程式庫,請參閱這篇文章。
如要向 Secret Manager 進行驗證,請設定應用程式預設憑證。
詳情請參閱「為本機開發環境設定驗證」。
Java
如要瞭解如何安裝及使用 Secret Manager 的用戶端程式庫,請參閱這篇文章。
如要向 Secret Manager 進行驗證,請設定應用程式預設憑證。
詳情請參閱「為本機開發環境設定驗證」。
Python
如要瞭解如何安裝及使用 Secret Manager 的用戶端程式庫,請參閱這篇文章。
如要向 Secret Manager 進行驗證,請設定應用程式預設憑證。
詳情請參閱「為本機開發環境設定驗證」。
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["難以理解","hardToUnderstand","thumb-down"],["資訊或程式碼範例有誤","incorrectInformationOrSampleCode","thumb-down"],["缺少我需要的資訊/範例","missingTheInformationSamplesINeed","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],[],[],[],null,["# Disable a secret with ETags\n\nShows how to disable a given secret version that contains ETags.\n\nCode sample\n-----------\n\n### Go\n\n\nTo learn how to install and use the client library for Secret Manager, see\n[Secret Manager client libraries](/secret-manager/docs/reference/libraries).\n\n\nTo authenticate to Secret Manager, set up Application Default Credentials.\nFor more information, see\n\n[Set up authentication for a local development environment](/docs/authentication/set-up-adc-local-dev-environment).\n\n import (\n \t\"context\"\n \t\"fmt\"\n\n \tsecretmanager \"cloud.google.com/go/secretmanager/apiv1\"\n \t\"cloud.google.com/go/secretmanager/apiv1/secretmanagerpb\"\n )\n\n // disableSecretVersionWithEtag disables the given secret version. Future requests will\n // throw an error until the secret version is enabled. Other secrets versions\n // are unaffected.\n func disableSecretVersionWithEtag(name, etag string) error {\n \t// name := \"projects/my-project/secrets/my-secret/versions/5\"\n \t// etag := `\"123\"`\n\n \t// Create the client.\n \tctx := context.Background()\n \tclient, err := secretmanager.https://cloud.google.com/go/docs/reference/cloud.google.com/go/secretmanager/latest/apiv1.html#cloud_google_com_go_secretmanager_apiv1_Client_NewClient(ctx)\n \tif err != nil {\n \t\treturn fmt.Errorf(\"failed to create secretmanager client: %w\", err)\n \t}\n \tdefer client.https://cloud.google.com/go/docs/reference/cloud.google.com/go/secretmanager/latest/apiv1.html#cloud_google_com_go_secretmanager_apiv1_Client_Close()\n\n \t// Build the request.\n \treq := &secretmanagerpb.DisableSecretVersionRequest{\n \t\tName: name,\n \t\tEtag: etag,\n \t}\n\n \t// Call the API.\n \tif _, err := client.DisableSecretVersion(ctx, req); err != nil {\n \t\treturn fmt.Errorf(\"failed to disable secret version: %w\", err)\n \t}\n \treturn nil\n }\n\n### Java\n\n\nTo learn how to install and use the client library for Secret Manager, see\n[Secret Manager client libraries](/secret-manager/docs/reference/libraries).\n\n\nTo authenticate to Secret Manager, set up Application Default Credentials.\nFor more information, see\n\n[Set up authentication for a local development environment](/docs/authentication/set-up-adc-local-dev-environment).\n\n import com.google.cloud.secretmanager.v1.https://cloud.google.com/java/docs/reference/google-cloud-secretmanager/latest/com.google.cloud.secretmanager.v1.DisableSecretVersionRequest.html;\n import com.google.cloud.secretmanager.v1.https://cloud.google.com/java/docs/reference/google-cloud-secretmanager/latest/com.google.cloud.secretmanager.v1.SecretManagerServiceClient.html;\n import com.google.cloud.secretmanager.v1.https://cloud.google.com/java/docs/reference/google-cloud-secretmanager/latest/com.google.cloud.secretmanager.v1.SecretVersion.html;\n import com.google.cloud.secretmanager.v1.https://cloud.google.com/java/docs/reference/google-cloud-secretmanager/latest/com.google.cloud.secretmanager.v1.SecretVersionName.html;\n import java.io.IOException;\n\n public class DisableSecretVersionWithEtag {\n\n public static void disableSecretVersion() throws IOException {\n // TODO(developer): Replace these variables before running the sample.\n String projectId = \"your-project-id\";\n String secretId = \"your-secret-id\";\n String versionId = \"your-version-id\";\n // Including the quotes is important.\n String etag = \"\\\"1234\\\"\";\n disableSecretVersion(projectId, secretId, versionId, etag);\n }\n\n // Disable an existing secret version.\n public static void disableSecretVersion(\n String projectId, String secretId, String versionId, String etag)\n throws IOException {\n // Initialize client that will be used to send requests. This client only needs to be created\n // once, and can be reused for multiple requests. After completing all of your requests, call\n // the \"close\" method on the client to safely clean up any remaining background resources.\n try (https://cloud.google.com/java/docs/reference/google-cloud-secretmanager/latest/com.google.cloud.secretmanager.v1.SecretManagerServiceClient.html client = https://cloud.google.com/java/docs/reference/google-cloud-secretmanager/latest/com.google.cloud.secretmanager.v1.SecretManagerServiceClient.html.create()) {\n // Build the name from the version.\n https://cloud.google.com/java/docs/reference/google-cloud-secretmanager/latest/com.google.cloud.secretmanager.v1.SecretVersionName.html secretVersionName = https://cloud.google.com/java/docs/reference/google-cloud-secretmanager/latest/com.google.cloud.secretmanager.v1.SecretVersionName.html.of(projectId, secretId, versionId);\n\n // Build the request.\n https://cloud.google.com/java/docs/reference/google-cloud-secretmanager/latest/com.google.cloud.secretmanager.v1.DisableSecretVersionRequest.html request =\n https://cloud.google.com/java/docs/reference/google-cloud-secretmanager/latest/com.google.cloud.secretmanager.v1.DisableSecretVersionRequest.html.newBuilder()\n .setName(secretVersionName.https://cloud.google.com/java/docs/reference/google-cloud-secretmanager/latest/com.google.cloud.secretmanager.v1.SecretVersionName.html#com_google_cloud_secretmanager_v1_SecretVersionName_toString__())\n .setEtag(etag)\n .build();\n\n // Disable the secret version.\n https://cloud.google.com/java/docs/reference/google-cloud-secretmanager/latest/com.google.cloud.secretmanager.v1.SecretVersion.html version = client.disableSecretVersion(request);\n System.out.printf(\"Disabled secret version %s\\n\", version.https://cloud.google.com/java/docs/reference/google-cloud-secretmanager/latest/com.google.cloud.secretmanager.v1.SecretVersion.html#com_google_cloud_secretmanager_v1_SecretVersion_getName__());\n }\n }\n }\n\n### Python\n\n\nTo learn how to install and use the client library for Secret Manager, see\n[Secret Manager client libraries](/secret-manager/docs/reference/libraries).\n\n\nTo authenticate to Secret Manager, set up Application Default Credentials.\nFor more information, see\n\n[Set up authentication for a local development environment](/docs/authentication/set-up-adc-local-dev-environment).\n\n def disable_secret_version_with_etag(\n project_id: str, secret_id: str, version_id: str, etag: str\n ) -\u003e secretmanager.DisableSecretVersionRequest:\n \"\"\"\n Disable the given secret version. Future requests will throw an error until\n the secret version is enabled. Other secrets versions are unaffected.\n \"\"\"\n\n # Import the Secret Manager client library.\n from google.cloud import secretmanager\n from google.cloud.secretmanager_v1.types import service\n\n # Create the Secret Manager client.\n client = secretmanager.https://cloud.google.com/python/docs/reference/secretmanager/latest/google.cloud.secretmanager_v1.services.secret_manager_service.SecretManagerServiceClient.html()\n\n # Build the resource name of the secret version\n name = f\"projects/{project_id}/secrets/{secret_id}/versions/{version_id}\"\n\n # Build the request\n request = service.https://cloud.google.com/python/docs/reference/secretmanager/latest/google.cloud.secretmanager_v1.types.DisableSecretVersionRequest.html()\n request.name = name\n request.etag = etag\n\n # Disable the secret version.\n response = client.https://cloud.google.com/python/docs/reference/secretmanager/latest/google.cloud.secretmanager_v1.services.secret_manager_service.SecretManagerServiceClient.html#google_cloud_secretmanager_v1_services_secret_manager_service_SecretManagerServiceClient_disable_secret_version(request=request)\n\n print(f\"Disabled secret version: {response.name}\")\n\nWhat's next\n-----------\n\n\nTo search and filter code samples for other Google Cloud products, see the\n[Google Cloud sample browser](/docs/samples?product=secretmanager)."]]