Skip to content
garage
Esc
navigateopen⌘Jpreview
On this page

Anonymous repository lifecycle

How anonymous identity, expiration, ownership, and sharing relate.

An anonymous repository has no account or organization. Its continued availability depends on two separate things:

  • the repository’s configured lifetime
  • possession of an anonymous owner identity or a share credential

Identity and ownership

When a client creates an anonymous repository, the service gives it an anonymous identity. The CLI stores that identity locally. A later garage anon list, share, or delete command can therefore manage the same repositories.

GARAGE_ANON_ID can supply the identity explicitly. The JavaScript SDK can persist the identity when you set configDir. If you do not set configDir, only the current SDK instance keeps the identity.

The loss of the owner identity does not delete the repository immediately. That client can no longer do owner operations on the repository.

Expiration

The default lifetime is 24 hours. The accepted range is 60 seconds through 72 hours. At expiration, the repository and its access paths become unavailable.

You cannot convert an anonymous repository into a permanent authenticated repository. Use an authenticated repository when the data must outlive the configured lifetime.

Shares

An owner can create a revocable read or write share. A share is a separate bearer credential. It grants its stated access, but it does not reveal the owner identity.

A share cannot outlive the repository. Repository expiration ends access even when the share’s requested lifetime would end later.

See Create an anonymous repository for CLI and SDK procedures.

Was this page helpful?