加入收藏 | 设为首页 | 会员中心 | 我要投稿 云计算网_泰州站长网 (http://www.0523zz.com/)- 视觉智能、AI应用、CDN、行业物联网、智能数字人!
当前位置: 首页 > 服务器 > 安全 > 正文

怎么保护Kubernetes的机密信息

发布时间:2022-06-27 16:36:13 所属栏目:安全 来源:互联网
导读:现如今开发的大多数应用程序,或多或少都会用到一些敏感信息,用于执行某些业务逻辑。比如使用用户名密码去连接数据库,或者使用秘钥连接第三方服务。在代码中直接使用这些密码或者秘钥是最直接的方式,但同时也带来了很大的安全问题,如何保证密码、秘钥不
  现如今开发的大多数应用程序,或多或少都会用到一些敏感信息,用于执行某些业务逻辑。比如使用用户名密码去连接数据库,或者使用秘钥连接第三方服务。在代码中直接使用这些密码或者秘钥是最直接的方式,但同时也带来了很大的安全问题,如何保证密码、秘钥不被泄露。
 
  为了保证敏感信息的安全性,Secret对象应该被加密,并且应该使用Kubernetes RBAC机制对访问进行控制。如果你正在使用AWS公有云来托管Kubernetes集群,则可以利用AWS密钥管理服务(KMS)对静态数据进行加密。
 
 
  如何存储加密密钥和管理整个加解密过程,可以使用Bitnami的Sealed Secrets。
 
  选择2:使用第三方服务来存储敏感数据
  你可以将敏感数据存储到第三方服务中,如AWS Secrets Manager或HashiCorp Vault。
  创建自定义Kubernetes控制器,基于配置从这些服务中获取机密信息,并在运行时创建Kubernetes Secret对象。
  External Secrets项目可以帮助你实现选项2。
 
  你还可以增强应用程序逻辑,以便在应用程序启动时从第三方服务读取机密信息,但这里的整体思想是将机密信息管理与应用程序业务逻辑分离开来,并利用Kubernetes的功能来进行相同的管理。
 
  快速概览Sealed Secrets
  在Sealed Secret开源项目中,你可以将你的Secret加密为一个SealedSecret,这样就可以安全地存储,甚至可以存储到公共存储库中。SealedSecret只能由运行在目标集群中的控制器解密,其他人,甚至包括原始作者,都无法从SealedSecret获得原始的Secret。
 
  Sealed Secrets由两部分组成:
 
  服务器端的控制器
  客户端工具:kubeseal
  kubeseal使用非对称加密来加密数据,然后只有服务端的控制器才能解密数据。
 
  这些加密数据被编码在SealedSecret资源中,你可以将其视为创建Secret的配方。
 
  下面是如何使用Sealed Secrets来管理Secret的具体步骤。
 
  1、安装kubeseal,这是一个客户端工具,可以帮助你创建SealedSecret
 
   
 
  复制
  > wget https://github.com/bitnami-labs/sealed-secrets/releases/download/v0.15.0/kubeseal-linux-amd64 -O kubeseal  
  > sudo install -m 755 kubeseal /usr/local/bin/kubeseal
  1.
  2.
  2、安装服务器端控制器,为SealedSecret创建Custom Resource Definition(CRD)
 
   
 
  复制
  > kubectl apply -f https://github.com/bitnami-labs/sealed-secrets/releases/download/v0.15.0/controller.yaml
   
  rolebinding.rbac.authorization.k8s.io/sealed-secrets-service-proxier created
  role.rbac.authorization.k8s.io/sealed-secrets-key-admin created
   3、验证sealed-secret controller Pod是否运行
 
   
 
  复制
  > kubectl get pods -n kube-system -l name=sealed-secrets-controller
   
  NAME                                         READY   STATUS RESTARTS   AGE
  sealed-secrets-controller-7c766b885b-d5r2r   1/1     Running   0          7m39s
  1.
  2.
  3.
  4.
  如果你查看Pod的日志,你将看到控制器为自己创建的一对秘钥,这对秘钥将被用于加解密过程。
 
   
 
  复制
  > kubectl logs sealed-secrets-controller-7c766b885b-d5r2r -n kube-system
   
  controller version: v0.15.0
  2021/05/01 20:13:34 Starting sealed-secrets controller version: v0.15.0
  2021/05/01 20:13:34 Searching for existing private keys
  2021/05/01 20:13:35 New key written to kube-system/sealed-secrets-keymt6dg
  2021/05/01 20:13:35 Certificate is  
  -----BEGIN CERTIFICATE-----
  MIIErjCCApagAwIBAgIRAJqYfaZsali26I8pvBXoFGYwDQYJKoZIhvcNAQELBQAw
  ADAeFw0yMTA1MDEyMDEzMzVaFw0zMTA0MjkyMDEzMzVaMAAwggIiMA0GCSqGSIb3
  DQEBAQUAA4ICDwAwggIKAoICAQDp/yO5PY8ACHBDuguhtfpOwlbScK9hZorJloyx
  ixVCc57j1zMSX0pSVcrk1Yuyf6sYvBQtDi16kM70z6y/ODiz+9g87K/jY7B0UAoi
  mpzM/T0tWJiG9ixyNMZhHoNREauokSlbERq3Jl8ZNTfmxHWhLH7DhkJ7MdpQfMpK
  a3XHcSZyz1mXFqv+OSCCwllWCRHmHgp/vqudAv8+NYm0gnAxKt2fjlv/ObX8J1RI
  CtLnlsCpp/9SyVcSTeYYaqjUsI7fTUZ7tkTE/bdQHwf3xe4DhUty7xLqMF1OPSPw
  EetL8fGO0VqoSQFKQ0Bf78+8vhAA2cwkuqB6vQQm9pT3yC5niSCUo+jwFcfyknjr
  yx8DINbq6K9B40EXh8X7w4I6zwYpyT0GoNU54wW0ki8pHRm7EnFeBOkUvNspzmKn
  t/EZEDVq74Kkl/BRNRvKHYlwudSoJuvvX6JM8DVvRp0lMPnXnG3RLSmCP3gEFQBZ
  DhbnkwO+6ADX9Q4vyqelWoHWdVGVULDlMDhSzvEhFFgPcZXzWTShH81vfl8M6lpT
  U0ysZkA6i3A29XEJpPj35yWPBDWmKF5fLM3ChMt/NSJEeoJN1RboPDAgVUTxEW59
  q+Tq09/zlYD7Ch8PNc3IWNXjFNXmCAAOw9Z1VBbD8p6LrC5JvBtPoWYqufWVXQD9
  KDe+6wIDAQABoyMwITAOBgNVHQ8BAf8EBAMCAAEwDwYDVR0TAQH/BAUwAwEB/zAN
  BgkqhkiG9w0BAQsFAAOCAgEAvu//VzDREYZPPIW1maTxo9C/nHEEuOP0rQU3zVQr
  bBYf8N0b5wpCllESCgi0JDJJXrE8KrjfdtawjoBrBlHOdWHF+fIot2KbrC/i37em
  /ulMAgiiJzrKM/ExJuCuH60fsSIx4wrg46tQpU8jHFWq7nGnsaE+UN3QPjuvQ+qo
  KKDSBLDxLx+q9vBfaXElblh4okUI8Pr4UEEJrYiPzPM6nA9EPpy53N3si4jyDJJb
  2IsCUa2bW6iBhpyZOQQUPn22ziWRQ/sYYNmtP/gX0rwtk+Rr8TTdzPYGZcYfMQ6O
  TFq4Zo2/TnpCL/CUr2DiSuF2qdWGGvbQOENYq2FNuDI4zeljElcZHXA8nhpbNSJs
  7VNqqz5ZTFCKyL0Gn6SawGT7EdwBT2AD3F33Qd/7bXG/On7KdVw6FKHbZOR2RcoS
  YFQv7Xr8g/4atQjxDa7R5+zkxd5unsvpFhYM1UfNJc4cjJ7SmfCCHoPGiwZ0OgqB
  6SvUVU64QmMMJ/jYAJkYMOakSHaRITHAvvBjpAMKxSjjb7qZD5FnpXLhRY9lNiY6
  MnnQRxJskCw+R6geIAHTMzAofMfc1haIEr+3oMFZfyh1LFFsz3B4hMxXYKrWYDje
  +96bhAY9X7L0UfREjmw8HCeZneEuBJjX9z/PyIeMdhViLh9uO/MAL1MBxdBVA55+
  LW8=
  -----END CERTIFICATE-----
   
  2021/05/01 20:13:35 HTTP server serving on :8080 

(编辑:云计算网_泰州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读