了解如何使用 Cloud Code 的 Secret Manager 创建和管理 Secret 集成。
如需遵循有关此任务的分步指导,请直接在 Cloud Shell Editor 中点击操作演示:
准备工作
-
In the Google Cloud console, go to the project selector page.
-
Select or create a Google Cloud project.
在 Cloud Code 状态栏中,点击活跃项目名称。
在显示的“快速选择”菜单中,选择新建应用,然后 然后点击 Cloud Run 应用。
从 Cloud Run 示例列表中,选择 Python (Flask): Cloud Run。
为您的示例选择一个文件夹,然后点击 Create New Application(创建新应用)。
- 点击
秘密 管理器 ,并稍等片刻。 - 如果系统提示您授权 Cloud Shell 进行 Google Cloud API 调用,请执行以下操作: 点击授权。
- 点击添加
创建 Secret 。 - 如果系统提示,请从下拉选择器中选择您的 Google Cloud 项目。
- 如果出现提示,请启用 Secret Manager API。
在显示的 Secret Manager - Create Secret 标签页中,输入 在名称字段中填写以下内容:
my-secret
在密钥值字段中,输入:
Hello secret!
点击 Create Secret,然后系统会显示一条消息,告知您 Secret 已成功创建 出现。
打开
云 API 视图,然后选择 <ph type="x-smartling-placeholder"></ph> Secret Manager API 。系统随即会打开一个“Google Cloud API 详细信息”标签页,其中 Secret Manager API 是 标题。
在安装客户端库部分,点击 Python 标签页,然后 点击 play_arrow 在终端中运行。 这会安装
google-cloud-secret-manager
客户端库。未解决
requirements.txt 并将以下代码行添加到文件底部:google-cloud-secret-manager==2.1.0
系统会自动保存您所做的更改。
如需获取密钥的最新值,请打开
app.py 然后复制并粘贴以下函数: <ph type="x-smartling-placeholder"></ph> 在 hello 函数之后运行 :def access_secret_version(secret_version_id): """Return the value of a secret's version""" from google.cloud import secretmanager # 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. return response.payload.data.decode('UTF-8')
如需调用
access_secret_version
函数,请将消息变量 替换为以下内容:message = access_secret_version("<SECRET_VERSION_ID>")
如果您仍然打开 Secret Manager - Create Secret 标签页, file_copy:复制该 ID。
如需随时获取密钥版本的 ID,请前往
秘密 经理 >[SECRET_NAME] >请按住 将鼠标悬停在您的版本上,然后点击 复制资源 ID。如需添加版本 ID,请替换占位符
替换为您复制的版本 ID。<SECRET_VERSION_ID>
- 从状态栏启动
Cloud Code 菜单。 - 如需构建服务并将其部署到模拟器,请选择
运行 Cloud Run 模拟器上的资源 。 - 在随即显示的“在 Cloud Run 模拟器上运行/调试”标签页中,点击 Run。
首次运行配置时,此过程可能需要一些时间 到 5 分钟。通过
输出 面板会显示您构建和部署应用的进度。构建好应用后,点击 出现在您的
输出 面板。您的 Secret 的值会显示在成功图形下方。- 点击
秘密 经理 视图。 - 点击 Secret 即可展开它。
- 在版本文件夹中,右键点击您所需的编号版本 以查看 的值并选择显示版本值。
- 点击
秘密 经理 视图。 - 右键点击 Secret 的名称,然后选择 Create Secret Version。
- 在显示的 Secret Manager - 创建版本标签页中,输入新的 值,然后点击创建版本。
- 打开 Secret Manager - Create Secret 标签页后,点击 file_copy 点击复制将 ID 复制到顶层。
- 如需添加新版 ID,请替换显示此消息的当前版本
变量
app.py 替换为您复制的较新版本 ID。 - 点击 Cloud Code,然后展开 Secret Manager 部分。
- 点击 Secret 即可展开它。
- 在版本文件夹下,右键点击您要 停用。
- 选择停用版本。
- 点击 Cloud Code,然后展开 Secret Manager 部分。
- 点击 Secret 即可展开它。
- 在版本文件夹下,右键点击要销毁的版本。
- 选择销毁版本。
- 点击 Cloud Code,然后展开 Kubernetes 部分。
- 将指针悬停在集群名称上,然后点击 open_in_new 在 Google Cloud 控制台中打开。
- 点击删除,然后再次点击删除进行确认。
进入 Google Cloud 控制台中的“项目”页面:
选择您为本快速入门创建的项目,然后点击删除。
输入项目 ID 进行确认,然后点击关停。
这将关闭该项目并安排将其删除。
创建 Cloud Run 服务
使用 Cloud Shell Editor 作为创建 Cloud Run 服务的环境 和密钥。编辑器会预加载云开发所需的工具。
如需创建服务,请执行以下操作:
Cloud Shell Editor 在新工作区中加载您的服务后,可在以下位置查看其文件:
创建 Secret
借助 Secret Manager,您可以 以二进制 blob 或文本字符串形式安全地存储、管理和访问 Secret。 此外,它还负责管理您的密文,这意味着 虚拟机或运维服务。
如需使用 Cloud Code 的 Secret Manager 集成创建 Secret,请执行以下操作:
向您的代码添加密钥
Secret 非常适合存储数据库等配置信息 密码、API 密钥或 TLS 证书。
如需向您的代码添加密钥,请执行以下操作:
在 Cloud Run 模拟器上运行
如需测试新密钥,请在 Cloud Run 模拟器本地运行 Cloud Run 服务。
查看和创建新的 Secret 版本
Cloud Code 的 Secret Manager 视图可让您快速查看项目的 以及管理它们的操作
查看 Secret 版本的值
请注意,您无法修改 Secret 版本。如需更新 Secret 的值,您必须创建一个 新版本。
创建新的 Secret 版本
Secret 的值存储在 Secret 版本中。一个密钥可以有多个 版本。当 Secret 发生更改时,这非常有用。更新 Secret 与新版本相关联,意味着您无需更新代码。
latest
。
查看和管理密钥
停用 Secret 版本
创建后,Secret 版本默认处于启用状态,这意味着 。已停用的 Secret 无法访问,但您可以随时恢复访问权限 任何时候
如需停用密钥版本,请执行以下操作:
销毁密文版本
密文版本一旦销毁,便无法访问。销毁 Secret 版本一经确定便无法更改。
清理
如需仅删除您为本快速入门创建的集群,请执行以下操作:
如需删除项目(以及关联的资源,包括所有集群),请执行以下操作: