stop writing and attaching per-agent and per-hive bao policies
This commit is contained in:
parent
eac7f2a7c1
commit
139007e656
1 changed files with 253 additions and 419 deletions
|
|
@ -13,11 +13,12 @@
|
|||
//! is ever moved. Any other arrangement is a [`Plan::Conflict`]: nothing is
|
||||
//! written and an operator decides.
|
||||
//!
|
||||
//! Everything else here is best effort. An agent's own policy still grants it
|
||||
//! its paths, so a store that refuses these calls costs the shared policy and
|
||||
//! nothing else: the failure is logged at `warn` and the caller goes on. The
|
||||
//! grants are the `identity/` stanzas of `swarm-bao.nix`'s
|
||||
//! `controllerPolicyText`, and a controller can start before they deploy.
|
||||
//! Everything else here is best effort: a failure is logged at `warn` and the
|
||||
//! caller goes on. An agent whose entity is not named after it reads nothing,
|
||||
//! because the shared policy is the only one its role attaches; at mint the
|
||||
//! read-back fails, and on a start pass its next reads are refused.
|
||||
//! The grants are the `identity/` stanzas of `swarm-bao.nix`'s
|
||||
//! `controllerPolicyText`.
|
||||
|
||||
use anyhow::{Context, Result, bail};
|
||||
use swarm_secret_client::{
|
||||
|
|
@ -97,7 +98,7 @@ pub async fn ensure_agents(store: &SecretStore, agents: &[String]) {
|
|||
Err(e) => {
|
||||
tracing::warn!(
|
||||
error = %e,
|
||||
"agent entities are not managed: the cert auth mount's accessor could not be read; agents keep their own policy"
|
||||
"agent entities are not managed: the cert auth mount's accessor could not be read; an agent whose entity is not named after it cannot read its secrets"
|
||||
);
|
||||
return;
|
||||
}
|
||||
|
|
@ -173,7 +174,7 @@ async fn ensure_one(store: &SecretStore, accessor: &str, agent: &str) -> Result<
|
|||
agent,
|
||||
alias,
|
||||
entity_name,
|
||||
"the agent's alias is on an entity that is not the agent's; nothing was changed and the agent keeps its own policy"
|
||||
"the agent's alias is on an entity that is not the agent's; nothing was changed and the agent cannot read its secrets until an operator resolves it"
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue