Deal of The Day! Hurry Up, Grab the Special Discount - Save 25% - Ends In 00:00:00 Coupon code: SAVE25
Welcome to Pass4Success

- Free Preparation Discussions

Linux Foundation KCNA Exam - Topic 2 Question 80 Discussion

What default level of protection is applied to the data in Secrets in the Kubernetes API?
D) The values are base64 encoded
A) The values use AES symmetric encryption
B) The values are stored in plain text
C) The values are encoded with SHA256 hashes

Linux Foundation KCNA Exam - Topic 2 Question 80 Discussion

Actual exam question for Linux Foundation's KCNA exam
Question #: 80
Topic #: 2
[All KCNA Questions]

What default level of protection is applied to the data in Secrets in the Kubernetes API?

Show Suggested Answer Hide Answer
Suggested Answer: D

Kubernetes Secrets are designed to store sensitive data such as tokens, passwords, or certificates and make them available to Pods in controlled ways (as environment variables or mounted files). However, the default protection applied to Secret values in the Kubernetes API is base64 encoding, not encryption. That is why D is correct. Base64 is an encoding scheme that converts binary data into ASCII text; it is reversible and does not provide confidentiality.

By default, Secret objects are stored in the cluster's backing datastore (commonly etcd) as base64-encoded strings inside the Secret manifest. Unless the cluster is configured for encryption at rest, those values are effectively stored unencrypted in etcd and may be visible to anyone who can read etcd directly or who has API permissions to read Secrets. This distinction is critical for security: base64 can prevent accidental issues with special characters in YAML/JSON, but it does not protect against attackers.

Option A is only correct if encryption at rest is explicitly configured on the API server using an EncryptionConfiguration (for example, AES-CBC or AES-GCM providers). Many managed Kubernetes offerings enable encryption at rest for etcd as an option or by default, but that is a deployment choice, not the universal Kubernetes default. Option C is incorrect because hashing is used for verification, not for secret retrieval; you typically need to recover the original value, so hashing isn't suitable for Secrets. Option B (''plain text'') is misleading: the stored representation is base64-encoded, but because base64 is reversible, the security outcome is close to plain text unless encryption at rest and strict RBAC are in place.

The correct operational stance is: treat Kubernetes Secrets as sensitive; lock down access with RBAC, enable encryption at rest, avoid broad Secret read permissions, and consider external secret managers when appropriate. But strictly for the question's wording---default level of protection---base64 encoding is the right answer.

=========


Contribute your Thoughts:

0/2000 characters
Son
2 days ago
Definitely not secure by default.
upvoted 0 times
...
Yvonne
8 days ago
Wait, really? I thought they were encrypted!
upvoted 0 times
...
Cecil
13 days ago
That's right, super risky!
upvoted 0 times
...
Ngoc
18 days ago
B) The values are stored in plain text.
upvoted 0 times
...
Ellsworth
23 days ago
I definitely recall something about SHA256 hashes, but I can't remember if that's related to Secrets or something else in Kubernetes.
upvoted 0 times
...
Alexia
28 days ago
I could be wrong, but I feel like the values are encrypted with AES symmetric encryption. That sounds familiar from my notes.
upvoted 0 times
...
Meghan
1 month ago
I remember practicing a question about Kubernetes Secrets, and I think they might be base64 encoded by default.
upvoted 0 times
...
Alida
1 month ago
I think the default level of protection for Secrets is that they are stored in plain text, but I'm not entirely sure.
upvoted 0 times
...

Save Cancel