Secret
Small object holding a password, token or key, base64 encoded and stored unencrypted unless encryption at rest is enabled.
- Provider
- k8s
- Kind
- Key management
- Category
- Security
| property | type | values | required | kind default | this component |
|---|---|---|---|---|---|
| base64Encoded | boolean | — | no | true | inherited |
| encryptionAtRest | boolean | — | no | false | inherited |
| envelopeEncryption | boolean | — | no | false | ▸ false |
| hsm | boolean | — | no | false | ▸ false |
| immutable | boolean | — | no | false | inherited |
| managed | boolean | — | no | true | ▸ false |
| maxSizeBytes | integer | — | no | 1048576 | inherited |
| rotationAutomated | boolean | — | no | false | ▸ false |
| rotationDays | integer | — | no | — | inherited |
| secretType | enum | opaque | service-account-token | docker-cfg | docker-config-json | basic-auth | ssh-auth | tls | bootstrap-token | no | opaque | inherited |
Every rule whose selector covers this component's kind or its category. Whether a rule fires depends on the design: its properties, its edges and its groups.
No rule reads this kind yet. That is a gap, not a guarantee.
nodes:
- { id: "secret", component: "k8s-secret" }Certificate Management Servicealibaba-certificate-managementData Encryption Servicealibaba-data-encryption-serviceAWS Certificate Manageraws-acmAWS KMSaws-kmsAWS Payment Cryptographyaws-payment-cryptographyAWS Private Certificate Authorityaws-private-caAWS Secrets Manageraws-secrets-managerAWS Signeraws-signerAWS Systems Manager Parameter Storeaws-ssm-parameter-storeAWS CloudHSMcloudhsmArtifact Signingazure-artifact-signingAzure Cloud HSMazure-cloud-hsmAzure Dedicated HSMazure-dedicated-hsmAzure Key Vaultazure-key-vaultAzure Key Vault Managed HSMazure-managed-hsmAdvanced Certificate Managercloudflare-advanced-certificate-managerCloudflare Geo Key Managercloudflare-geo-key-managerCloudflare Keyless SSLcloudflare-keyless-sslCloudflare mTLS client certificatescloudflare-mtlsCloudflare Origin CAcloudflare-origin-caCloudflare Secrets Storecloudflare-secrets-storeCloudflare Universal SSLcloudflare-ssl-tlsBitwardenbitwardencert-managercert-managerCyberArk ConjurconjurDopplerdopplerEJBCAejbcaEntrust nShield HSMentrust-nshieldHashiCorp Vaulthashicorp-vaultHCP Vault Dedicatedhcp-vaultInfisicalinfisicalGeneric key managementkey-management1Password Connectonepassword-connectOpenBaoopenbaoSealed Secretssealed-secretsSmallstep step-castep-caThales Luna HSMthales-luna-hsmCertificate Authority Servicegoogle-certificate-authority-serviceCertificate Managergoogle-certificate-managerCloud External Key Managergoogle-cloud-ekm
and 13 more → Key management page# yaml-language-server: $schema=../../schema/component.schema.json # Kubernetes Secret: a small object holding a password, token or key. Per "Secrets" the values are # base64 encoded for convenience, not encrypted: they are stored unencrypted in etcd unless # encryption at rest is enabled explicitly, and anyone with API access to the namespace -- or read # access to etcd -- can retrieve them. The default type is Opaque, the cap is 1 MiB, and a Secret # is mutable unless immutable: true is set. Kubernetes does not rotate Secret material. schemaVersion: "1" type: "component" id: "k8s-secret" kind: "key-management" provider: "k8s" docs: "https://kubernetes.io/docs/concepts/configuration/secret/" defaults: managed: false hsm: false rotationAutomated: false envelopeEncryption: false properties: encryptionAtRest: type: "boolean" default: false base64Encoded: type: "boolean" default: true secretType: type: "enum" values: ["opaque", "service-account-token", "docker-cfg", "docker-config-json", "basic-auth", "ssh-auth", "tls", "bootstrap-token"] default: "opaque" maxSizeBytes: type: "integer" default: 1048576 immutable: type: "boolean" default: false