keepersecurity-external-secret.yaml 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. {% raw %}
  2. apiVersion: external-secrets.io/v1
  3. kind: ExternalSecret
  4. metadata:
  5. name: example
  6. spec:
  7. refreshInterval: 1h # rate SecretManager pulls KeeperSrucity
  8. secretStoreRef:
  9. kind: SecretStore
  10. name: example # name of the SecretStore (or kind specified)
  11. target:
  12. name: secret-to-be-created # name of the k8s Secret to be created
  13. creationPolicy: Owner
  14. dataFrom:
  15. - extract:
  16. key: OqPt3Vd37My7G8rTb-8Q # ID of the Keeper Record
  17. ---
  18. apiVersion: external-secrets.io/v1
  19. kind: ExternalSecret
  20. metadata:
  21. name: regcred
  22. namespace: external-secrets
  23. spec:
  24. refreshInterval: 1h
  25. secretStoreRef:
  26. name: keeper
  27. kind: ClusterSecretStore
  28. target:
  29. name: regcred
  30. creationPolicy: Owner
  31. template:
  32. engineVersion: v2
  33. type: kubernetes.io/dockerconfigjson
  34. data:
  35. .dockerconfigjson: "{\"auths\":{\"registry.example.com\":{\"username\":\"{{ .username }}\",\"password\":\"{{ .password }}\",\"auth\":\"{{(printf \"%s:%s\" .username .password) | b64enc }}\"}}}"
  36. data:
  37. - secretKey: username
  38. remoteRef:
  39. key: OqPt3Vd37My7G8rTb-8Q
  40. property: login
  41. - secretKey: password
  42. remoteRef:
  43. key: OqPt3Vd37My7G8rTb-8Q
  44. property: password
  45. ---
  46. apiVersion: external-secrets.io/v1
  47. kind: ExternalSecret
  48. metadata:
  49. name: config
  50. namespace: external-secrets
  51. spec:
  52. refreshInterval: 1h
  53. secretStoreRef:
  54. name: keeper
  55. kind: ClusterSecretStore
  56. target:
  57. name: credentials
  58. creationPolicy: Owner
  59. template:
  60. engineVersion: v2
  61. data:
  62. username: "{{ .login }}"
  63. password: "{{ .password }}"
  64. data:
  65. - secretKey: login
  66. remoteRef:
  67. key: OqPt3Vd37My7G8rTb-8Q
  68. property: login
  69. - secretKey: password
  70. remoteRef:
  71. key: OqPt3Vd37My7G8rTb-8Q
  72. property: password
  73. ---
  74. apiVersion: external-secrets.io/v1
  75. kind: ExternalSecret
  76. metadata:
  77. name: example
  78. spec:
  79. refreshInterval: 1h # rate SecretManager pulls KeeperSrucity
  80. secretStoreRef:
  81. kind: SecretStore
  82. name: example # name of the SecretStore (or kind specified)
  83. target:
  84. name: secret-to-be-created # name of the k8s Secret to be created
  85. creationPolicy: Owner
  86. template:
  87. engineVersion: v2
  88. data:
  89. username: "{{ (fromJson .name).first }} {{ (fromJson .name).middle }} {{ (fromJson .name).last }}" # decode json string into vars
  90. dataFrom:
  91. - extract:
  92. key: OqPt3Vd37My7G8rTb-8Q # ID of the Keeper Record
  93. {% endraw %}