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

前提条件

背景信息

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

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

创建保密字典

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

      当您想上传二进制数据转化成Base64编码的文本时,可选中Base64编码数据复选框。勾选后,保密字典须配置已经过Base64编码处理的数据,EDAS将不再对数据进行编码。

    • TLS证书:用于保存TLS证书及其相关密钥。主要用在应用路由Ingress场景,支持将外部HTTPS请求路由到内部Service的路由规则集合。
    Opaque 创建Opaque类型的保密字典,需要设置以下参数:
    • 映射参数:
      • :敏感信息的Key。支持字母、数字、短划线(-)、下划线(_)和半角句号(.)。
      • :敏感信息的Value。

      您也可以单击导入配置,直接从本地导入配置文件,数据值大小不能超过1024K,支持json、yaml、properties类型。

    • 当您想上传二进制数据转化成Base64编码的文本时,可选中Base64编码数据复选框。勾选后,保密字典须配置已经过Base64编码处理的数据,EDAS将不再对数据进行编码。

    TLS证书 创建TLS证书类型的保密字典,支持创建自签名证书和手动创建。
    • 手动创建:需要手动输入Cert(TLS证书的公钥)和Key(TLS证书的私钥)。
    • 创建自签名证书:通过配置域名密钥长度证书起始时间证书失效时间生成证书。

查看保密字典

  1. 登录EDAS控制台
  2. 在左侧导航栏,选择应用管理 > Kubernetes配置 > 保密字典
  3. 保密字典页面顶部菜单栏选择地域。
  4. 保密字典页面,单击目标保密字典后的详情
    您可以通过保密字典名称集群名称集群IDK8s命名空间筛选目标保密字典。
  5. 在保密字典的详情页面,查看该保密字典的基本信息,以及保密字典包含的数据信息。
    对于TLS类型证书可在详情页查看证书的详细信息,包括证书关联域名、证书状态、证书服务提供商等。

修改保密字典

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

查看关联路由

  1. 登录EDAS控制台
  2. 在左侧导航栏,选择应用管理 > Kubernetes配置 > 保密字典
  3. 保密字典页面顶部菜单栏选择地域。
  4. 保密字典页面找到目标配置项,单击右侧的查看关联应用
    您可以通过保密字典名称集群名称集群IDK8s命名空间筛选目标保密字典。
  5. 在弹出的页面查看字典关联的应用路由,单击目标应用路由名称可查看应用路由基本信息。

删除保密字典

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