Reject conflicting SSH sync metadata
This commit is contained in:
parent
460acab67b
commit
0e3ca7e80a
5 changed files with 159 additions and 16 deletions
|
|
@ -223,11 +223,13 @@ unsupported and asks for JSONL or the spec source. Revocation lists are not yet
|
|||
full CRDT-replicated resources, but the daemon can already pull cert-flow and
|
||||
revocation metadata from authorized peers over the protected Iroh control ALPN.
|
||||
Manual sync commands and the background live-sync loop share the same capability
|
||||
checks and cursor state. Local SSH certificate and revocation metadata commands
|
||||
also accept an optional subject principal for authorization testing: non-owner
|
||||
subjects must hold `ssh_cert.*` capabilities on `resource:ssh:certs` or
|
||||
`ssh_revocation.*` capabilities on `resource:ssh:revocations` before requests,
|
||||
approval/import/read operations, or revocation publish/read/import operations
|
||||
checks and cursor state. Sync import rejects conflicting records with ids that
|
||||
already exist locally instead of replacing local metadata. Local SSH certificate
|
||||
and revocation metadata commands also accept an optional subject principal for
|
||||
authorization testing: non-owner subjects must hold `ssh_cert.*` capabilities on
|
||||
`resource:ssh:certs` or `ssh_revocation.*` capabilities on
|
||||
`resource:ssh:revocations` before requests, approval/import/read operations, or
|
||||
revocation publish/read/import operations
|
||||
are accepted. The live-sync loop first asks for authorized stream watermarks and
|
||||
skips module pulls whose remote high-water value has not advanced.
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue