From 7e1192fe973860915c67987de1cae2bbc29a1310 Mon Sep 17 00:00:00 2001 From: Michael Date: Thu, 24 Nov 2022 07:45:23 +0800 Subject: [PATCH] [zh] sync managing-secret-using-kubectl.md --- .../managing-secret-using-kubectl.md | 159 +++++++++--------- 1 file changed, 83 insertions(+), 76 deletions(-) diff --git a/content/zh-cn/docs/tasks/configmap-secret/managing-secret-using-kubectl.md b/content/zh-cn/docs/tasks/configmap-secret/managing-secret-using-kubectl.md index 41442fb717..7bf9c0c2b7 100644 --- a/content/zh-cn/docs/tasks/configmap-secret/managing-secret-using-kubectl.md +++ b/content/zh-cn/docs/tasks/configmap-secret/managing-secret-using-kubectl.md @@ -58,7 +58,7 @@ Run the following command: ```shell kubectl create secret generic db-user-pass \ - --from-literal=username=devuser \ + --from-literal=username=admin \ --from-literal=password='S!B\*d$zDsb=' ``` @@ -67,7 +67,7 @@ You must use single quotes `''` to escape special characters such as `$`, `\`, `*`, `=`, and `!` in your strings. If you don't, your shell will interpret these characters. --> -你必须使用单引号 `''` 转义字符串中的特殊字符,如 `$`、`\`、`*`、`=`和`!` 。否则,你的 shell +你必须使用单引号 `''` 转义字符串中的特殊字符,如 `$`、`\`、`*`、`=`和`!` 。否则,你的 shell 将会解析这些字符。 -1. 对凭证的取值作 base64 编码后保存到文件中: +1. 对凭证的取值作 base64 编码后保存到文件中: - ```shell - echo -n 'admin' | base64 > ./username.txt - echo -n 'S!B\*d$zDsb=' | base64 > ./password.txt - ``` - - `-n` 标志用来确保生成文件的文末没有多余的换行符。这很重要,因为当 `kubectl` - 读取文件并将内容编码为 base64 字符串时,额外的换行符也会被编码。 - 你不需要对文件中包含的字符串中的特殊字符进行转义。 + ```shell + echo -n 'admin' | base64 > ./username.txt + echo -n 'S!B\*d$zDsb=' | base64 > ./password.txt + ``` + + + `-n` 标志用来确保生成文件的文末没有多余的换行符。这很重要,因为当 `kubectl` + 读取文件并将内容编码为 base64 字符串时,额外的换行符也会被编码。 + 你不需要对文件中包含的字符串中的特殊字符进行转义。 -2. 在 `kubectl` 命令中传递文件路径: +2. 在 `kubectl` 命令中传递文件路径: - ```shell - kubectl create secret generic db-user-pass \ - --from-file=./username.txt \ - --from-file=./password.txt - ``` - - 默认键名为文件名。你也可以通过 `--from-file=[key=]source` 设置键名,例如: + ```shell + kubectl create secret generic db-user-pass \ + --from-file=./username.txt \ + --from-file=./password.txt + ``` - ```shell - kubectl create secret generic db-user-pass \ - --from-file=username=./username.txt \ - --from-file=password=./password.txt - ``` + + 默认键名为文件名。你也可以通过 `--from-file=[key=]source` 设置键名,例如: + + ```shell + kubectl create secret generic db-user-pass \ + --from-file=username=./username.txt \ + --from-file=password=./password.txt + ``` 输出类似于: ``` -NAME TYPE DATA AGE -db-user-pass Opaque 2 51s +NAME TYPE DATA AGE +db-user-pass Opaque 2 51s ``` -1. 查看你所创建的 Secret 内容 +1. 查看你所创建的 Secret 内容 - ```shell - kubectl get secret db-user-pass -o jsonpath='{.data}' - ``` + ```shell + kubectl get secret db-user-pass -o jsonpath='{.data}' + ``` - - 输出类似于: + + 输出类似于: - ```json - {"password":"UyFCXCpkJHpEc2I9","username":"YWRtaW4="} - ``` + ```json + {"password":"UyFCXCpkJHpEc2I9","username":"YWRtaW4="} + ``` - -2. 解码 `password` 数据: + +2. 解码 `password` 数据: - ```shell - echo 'UyFCXCpkJHpEc2I9' | base64 --decode - ``` + ```shell + echo 'UyFCXCpkJHpEc2I9' | base64 --decode + ``` - - 输出类似于: + + 输出类似于: - ``` - S!B\*d$zDsb= - ``` + ``` + S!B\*d$zDsb= + ``` - - {{}} - 这是一个出于文档编制目的的示例。实际上,该方法可能会导致包含编码数据的命令存储在 - Shell 的历史记录中。任何可以访问你的计算机的人都可以找到该命令并对 Secret 进行解码。 - 更好的办法是将查看和解码命令一同使用。{{}} + {{< caution >}} + + 这是一个出于文档编制目的的示例。实际上,该方法可能会导致包含编码数据的命令存储在 + Shell 的历史记录中。任何可以访问你的计算机的人都可以找到该命令并对 Secret 进行解码。 + 更好的办法是将查看和解码命令一同使用。 + {{< /caution >}} - ```shell - kubectl get secret db-user-pass -o jsonpath='{.data.password}' | base64 --decode - ``` + ```shell + kubectl get secret db-user-pass -o jsonpath='{.data.password}' | base64 --decode + ``` 这将打开默认编辑器,并允许你更新 `data` 字段中的 base64 编码的 Secret 值,示例如下: + ```yaml - #请编辑下面的对象。以“#”开头的行将被忽略, #空文件将中止编辑。如果在保存此文件时发生错误, #则将重新打开该文件并显示相关的失败。 -# apiVersion: v1 data: password: UyFCXCpkJHpEc2I9 @@ -297,17 +308,13 @@ To delete a Secret, run the following command: kubectl delete secret db-user-pass ``` - - ## {{% heading "whatsnext" %}} - 进一步阅读 [Secret 概念](/zh-cn/docs/concepts/configuration/secret/) - 了解如何[使用配置文件管理 Secret](/zh-cn/docs/tasks/configmap-secret/managing-secret-using-config-file/) -- 了解如何[使用 kustomize 管理 Secret](/zh-cn/docs/tasks/configmap-secret/managing-secret-using-kustomize/) +- 了解如何[使用 Kustomize 管理 Secret](/zh-cn/docs/tasks/configmap-secret/managing-secret-using-kustomize/)