defaccess_secret_version(secret_version_id):"""Return the value of a secret's version"""fromgoogle.cloudimportsecretmanager# Create the Secret Manager client.client=secretmanager.SecretManagerServiceClient()# Access the secret version.response=client.access_secret_version(name=secret_version_id)# Return the decoded payload.returnresponse.payload.data.decode('UTF-8')
[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["很难理解","hardToUnderstand","thumb-down"],["信息或示例代码不正确","incorrectInformationOrSampleCode","thumb-down"],["没有我需要的信息/示例","missingTheInformationSamplesINeed","thumb-down"],["翻译问题","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2025-09-04。"],[[["\u003cp\u003eCloud Code's Secret Manager integration allows you to create, store, manage, and access secrets securely without needing to manage virtual machines or operating services.\u003c/p\u003e\n"],["\u003cp\u003eYou can create a secret within Cloud Code by using the Secret Manager view, naming the secret, and providing a value for it.\u003c/p\u003e\n"],["\u003cp\u003eSecrets can be added to your application code by installing the \u003ccode\u003egoogle-cloud-secret-manager\u003c/code\u003e client library and using the provided function to access the secret's value by its ID.\u003c/p\u003e\n"],["\u003cp\u003eCloud Code's Secret Manager allows you to create new versions of secrets, which is useful for updating secret values without changing your application code.\u003c/p\u003e\n"],["\u003cp\u003eSecret versions can be disabled, making them inaccessible, or permanently destroyed through the Secret Manager view in Cloud Code.\u003c/p\u003e\n"]]],[],null,["# Create and manage secrets with Cloud Code\n\nLearn how to create and manage secrets using Cloud Code's Secret Manager\nintegration.\n\n*** ** * ** ***\n\nTo follow step-by-step guidance for this task directly in the\nCloud Shell Editor, click **Guide me**:\n\n[Guide me](https://console.cloud.google.com/?walkthrough_id=shell--secret_manager_cloud_code_create_secret)\n\n*** ** * ** ***\n\nBefore you begin\n----------------\n\n1. In the Google Cloud console, go to the project selector page.\n\n [Go to project selector](https://console.cloud.google.com/projectselector2/home/dashboard)\n2. Select or create a Google Cloud project.\n\n | **Note**: If you don't plan to keep the resources that you create in this procedure, create a project instead of selecting an existing project. After you finish these steps, you can delete the project, removing all resources associated with the project.\n3. Install [Git](https://git-scm.com/downloads) so that Cloud Code can perform Git operations, like cloning a sample.\n4. Install the [Cloud Code plugin](/code/docs/vscode/install#installing) if you haven't already.\n\nCreate your Cloud Run service\n-----------------------------\n\nUse Cloud Shell Editor as your environment for creating your Cloud Run service\nand secret. The editor comes preloaded with the tools needed for cloud\ndevelopment.\n\nTo create your service:\n\n1. In the Cloud Code status bar, click the active project name.\n\n2. In the Quick Pick menu that appears, select click **New Application** , and\n then click **Cloud Run Application**.\n\n3. From the list of Cloud Run samples, select **Python (Flask): Cloud Run**.\n\n4. Select a folder for your sample and then click **Create New Application**.\n\nAfter Cloud Shell Editor loads your service in a new workspace, view its files in\nthe explorer view.\n\nCreate a secret\n---------------\n\n[Secret Manager](https://cloud.google.com/secret-manager/) allows you to\nsecurely store, manage, and access secrets as binary blobs or text strings.\nAdditionally, it manages your secrets, meaning you don't have to deal with\nvirtual machines or operating services.\n\nTo create a secret with Cloud Code's Secret Manager integration:\n\n1. Click Secret Manager and give it a moment to load.\n2. If prompted to authorize Cloud Shell to make Google Cloud API calls, click **Authorize**.\n3. Click add Create Secret.\n4. If prompted, select your Google Cloud project from the dropdown selector.\n5. If prompted, enable the Secret Manager API.\n6. In the **Secret Manager - Create Secret** tab that appears, enter the\n following in the **Name** field:\n\n my-secret\n\n7. In the **Secret Value** field, enter:\n\n Hello secret!\n\n8. Click **Create Secret** and a message that your secret was successfully\n created appears.\n\nAdd a secret to your code\n-------------------------\n\nSecrets are great for storing configuration information such as database\npasswords, API keys, or TLS certificates needed by an application at runtime.\n\nTo add a secret to your code:\n\n1. Open the\n Cloud API view and select the\n Secret Manager API.\n\n This opens a Google Cloud API Detail tab with **Secret Manager API** as the\n heading.\n2. In the **Install Client Library** section, click the **Python** tab and\n click play_arrow **Run in terminal** .\n This installs the `google-cloud-secret-manager` client library.\n\n3. Open\n requirements.txt\n and add the following line to the bottom of the file:\n\n google-cloud-secret-manager==\u003cvar translate=\"no\"\u003eVERSION_NUMBER\u003c/var\u003e\n\n You can find the version number in the console after you run the\n installation in the previous step. For example, the console might show:\n `Successfully installed google-cloud-secret-manager-2.23.1`\n\n Your changes are automatically saved.\n4. To get the latest value of your secret, open\n app.py\n and copy and paste the following function:\n after the hello function:\n\n def access_secret_version(secret_version_id):\n \"\"\"Return the value of a secret's version\"\"\"\n from google.cloud import secretmanager\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 # Access 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_access_secret_version(name=secret_version_id)\n\n # Return the decoded payload.\n return response.payload.data.decode('UTF-8')\n\n5. To call the `access_secret_version` function, replace the\n message variable\n with the following:\n\n message = access_secret_version(\"\u003cSECRET_VERSION_ID\u003e\")\n\n6. If you still have the **Secret Manager - Create Secret** tab open,\n file_copy **Copy** the ID.\n\n To get the ID of a secret version at any time, navigate to\n Secret Manager \\\u003e \\[SECRET_NAME\\] \\\u003e Versions, hold the\n pointer over over your version, and click\n\n **Copy resource ID**.\n7. To add the version ID, replace the placeholder\n `\u003cSECRET_VERSION_ID\u003e`\n with your copied version ID.\n\nRun on Cloud Run emulator\n-------------------------\n\nTo test your new secret, run your Cloud Run service locally on the Cloud Run emulator.\n\n1. Launch the Cloud Code menu from the status bar.\n2. To build and deploy your service to the emulator, select **Run\n on Cloud Run Emulator**.\n3. In the Run/Debug on Cloud Run Emulator tab that appears, click **Run**.\n4. When running the configuration for the first time, this process can take up\n to 5 minutes. The\n **Output**\n panel displays the progress as your app is built and deployed.\n\n5. After your app is built, launch your app by clicking the localhost link that\n appears in your\n **Output**\n panel. Your secret's value is displayed under the success graphic.\n\nView and create a new secret version\n------------------------------------\n\nCloud Code's Secret Manager view gives you a quick look at your project's\nsecrets, with actions for managing them.\n\n### Viewing the value of a secret version\n\n1. Click the Secret Manager view.\n2. Expand your secret by clicking on it.\n3. In the **Versions** folder, right-click the numbered version that you want to view the value of and select **Show Version Value**.\n\nNote that you can't edit a secret version. To update a secret's value, you must create a\nnew *version*.\n\n### Create a new secret version\n\nThe value of a secret is stored in a secret version. A secret can have many\nversions. This is helpful in situations where a secret changes. Updating a\nsecret with a new version means you don't have to update your code.\n\n1. Click the Secret Manager view.\n2. Right-click your secret's name and select **Create Secret Version**.\n3. In the **Secret Manager - Create Version** tab that appears, enter a new value and click **Create Version**.\n4. After the **Secret Manager - Create Secret** tab opens, click file_copy **Copy** top copy the ID.\n5. To add the newer version ID, replace the current version that appears the message variable in app.py with the newer version ID that you copied.\n\nIf you always want your code to use the latest version, replace the version number at the end of your version ID with `latest`.\n\nView and manage secrets\n-----------------------\n\n### Disable a secret version\n\nSecret versions are enabled by default after creation, meaning they can be\naccessed. A disabled secret is inaccessible, but you can always restore access\nto it at any time.\n\nTo disable a secret version:\n\n1. Click **Cloud Code** and then expand the **Secret Manager** section.\n2. Expand your secret by clicking on it.\n3. Under the **Versions** folder, right-click the numbered version you want to disable.\n4. Select **Disable Version**.\n\n### Destroy a secret version\n\nWhen you destroy a secret version, it can't be accessed. Destroying a secret\nversion is permanent.\n\n1. Click **Cloud Code** and then expand the **Secret Manager** section.\n2. Expand your secret by clicking on it.\n3. Under the **Versions** folder, right-click the version you want to destroy.\n4. Select **Destroy Version**.\n\nCleaning up\n-----------\n\nTo delete just the cluster you created for this quickstart:\n\n1. Click **Cloud Code** and then expand the **Kubernetes** section.\n2. Hold the pointer over your cluster name and then click open_in_new **Open in Google Cloud console**.\n3. Click **Delete** and then click **Delete**.\n\nTo delete your project (and associated resources, including any clusters):\n\n1. Go to the Projects page in the Google Cloud console:\n\n [Go to the Projects page](https://console.cloud.google.com/project)\n2. Select the project that you created for this quickstart and then click\n **Delete**.\n\n3. Type the project ID to confirm and then click **Shut down**.\n\n This shuts down the project and schedules it for deletion."]]