如果您需要在EDAS K8s环境中使用一些敏感的配置,例如密码、证书等信息时,建议使用保密字典(Secret)。本文介绍如何管理保密字典。

前提条件

背景信息

您可以将一些敏感信息(如密码、证书等信息)统一保存到保密字典,在创建或者部署应用时可以将配置信息直接注入到容器;如果后续修改了保密字典内容,只需要重新部署应用便可生效。

保密字典主要有以下三种使用场景:
  • 使用保密字典定义容器的环境变量。具体操作,请参见配置环境变量
  • 将保密字典以文件的形式挂载到容器的指定目录。具体操作,请参见配置挂载
  • 在保密字典中的HTTPS证书信息可以直接用于应用路由Ingress。具体操作,请参见添加应用路由Ingress

更多关于保密字典的信息,请参见Secret

创建保密字典

  1. 登录EDAS控制台
  2. 在左侧导航栏选择配置管理 > Kubernetes配置
  3. Kubernetes配置的左侧导航栏单击保密字典
  4. 保密字典页面顶部菜单栏选择地域,在页面中选择微服务空间
  5. 保密字典页面,单击创建
  6. 创建面板中,设置保密字典参数,然后单击确定
    创建保密字典
    参数 描述
    保密字典名称 自定义设置保密字典名称。支持小写字母、短划线(-)和数字,第一个字符必须是字母,最后一个字符不能是短划线(-)。
    集群名称 从下拉列表中选择目标Kubernetes集群。
    K8s命名空间 K8s Namespace通过将系统内部的对象分配到不同的Namespace中,形成逻辑上分组的不同项目、小组或用户组,便于不同的分组在共享使用整个集群的资源的同时还能被分别管理。
    • default:没有其他命名空间的对象的默认命名空间。
    • kube-system:系统创建的对象的命名空间。
    • kube-public:此命名空间是自动创建的,并且可供所有用户(包括未经过身份验证的用户)读取。

    此处以选择default为例。

    类型 选择创建的保密字典类型,目前支持创建OpaqueTLS证书两类。
    • Opaque:用户自定义的任意数据。
    • TLS证书:用于保存TLS证书及其相关密钥。主要用在应用路由Ingress场景,支持将外部HTTPS请求路由到内部Service的路由规则集合。
    Opaque 如果创建Opaque类型的保密字典,需要设置以下参数:
    • :敏感信息的Key。支持字母、数字、下划线(_)、短划线(-)和半角句号(.)
    • :敏感信息的Value。
    TLS证书 如果创建TLS证书类型的保密字典,需要设置以下参数:
    • Cert:TLS证书的公钥。
    • Key:TLS证书的私钥。

查看保密字典

  1. 登录EDAS控制台
  2. 在左侧导航栏选择配置管理 > Kubernetes配置
  3. Kubernetes配置的左侧导航栏单击保密字典
  4. 保密字典页面顶部菜单栏选择地域,在页面中选择微服务空间
  5. 保密字典页面,单击目标保密字典后的详情
    您可以通过 保密字典名称集群名称集群IDK8s命名空间筛选目标保密字典。
  6. 在保密字典的详情页面,查看该保密字典的基本信息,以及保密字典包含的数据信息。

修改保密字典

  1. 登录EDAS控制台
  2. 在左侧导航栏选择配置管理 > Kubernetes配置
  3. Kubernetes配置的左侧导航栏单击保密字典
  4. 保密字典页面顶部菜单栏选择地域,在页面中选择微服务空间
  5. 保密字典页面找到目标配置项,单击右侧的编辑
    您可以通过 保密字典名称集群名称集群IDK8s命名空间筛选目标保密字典。
  6. 在编辑面板中,修改保密字典的映射名称和值,然后单击确定
    说明 如果已经有应用使用该保密字典,请在编辑完成后重新部署应用,以保证编辑后的保密字典信息在应用中生效。

删除保密字典

  1. 登录EDAS控制台
  2. 在左侧导航栏选择配置管理 > Kubernetes配置
  3. Kubernetes配置的左侧导航栏单击保密字典
  4. 保密字典页面顶部菜单栏选择地域,在页面中选择微服务空间
  5. 保密字典页面找到目标配置项,单击右侧的删除
    您可以通过 保密字典名称集群名称集群IDK8s命名空间筛选目标保密字典。
  6. 在确认删除对话框,单击确定
    说明 如果已经有应用使用该保密字典,不建议删除保密字典。