mirror of
https://github.com/whyour/qinglong.git
synced 2026-09-23 03:18:09 +08:00
fix(ql3): materialize projected runtime files
This commit is contained in:
@@ -967,8 +967,12 @@ and is fixed to `verify-full` in the committed deployment. The servername is
|
||||
mandatory, must be an explicit DNS name rather than an IP literal, and must
|
||||
match the endpoint certificate SAN. Only
|
||||
`postgres-ca.crt` and `api-credential-pepper-keyring.json` are projected from
|
||||
this Secret into the runtime private mount; only the URL and servername remain
|
||||
environment values. The keyring is a canonical, bounded 1–2 generation file;
|
||||
this Secret only into a hardened init container. It resolves one kubelet
|
||||
`..data` generation, copies both values without replacement into a Pod-private
|
||||
memory volume, and changes each regular file to `0400`; the long-running
|
||||
container can read only that materialized volume, never the symlink-backed
|
||||
Secret projection. Only the URL and servername remain environment values. The
|
||||
keyring is a canonical, bounded 1–2 generation file;
|
||||
the singleton above is the bootstrap form. The CA loader requires an absolute
|
||||
path to a regular file that is not group/world writable, 1–256 KiB, and
|
||||
contains 1–16 unique PEM X.509 CA certificates with no trailing data.
|
||||
|
||||
Reference in New Issue
Block a user