## Secret flag types

Each secret property in a setting has an associated "flags" property that describes how to handle that secret. The "flags" property is a bitfield that contains zero or more of the following values logically OR-ed together.

- `0x0 (none)` - the system is responsible for providing and storing this secret.
- `0x1 (agent-owned)` - a user-session secret agent is responsible for providing and storing this secret; when it is required, agents will be asked to provide it.
- `0x2 (not-saved)` - this secret should not be saved but should be requested from the user each time it is required. This flag should be used for One-Time-Pad secrets, PIN codes from hardware tokens, or if the user simply does not want to save the secret.
- `0x4 (not-required)` - in some situations it cannot be automatically determined that a secret is required or not. This flag hints that the secret is not required and should not be requested from the user.