pub struct LysConfig {
pub issuer: String,
pub network_id: String,
pub keys_path: PathBuf,
pub live: bool,
pub machine: Option<MachineConfig>,
pub services: Option<LysServicesConfig>,
pub broker: Option<BrokerConfig>,
pub relay: Option<RelayConfig>,
pub membership: Option<MembershipConfig>,
pub templates: Vec<ServiceTemplateConfig>,
pub api_url: Option<String>,
pub app_credential_path: Option<PathBuf>,
}Expand description
[auth.lys]: the Lys issuer whose passes are admitted (ACCESS-001 R2).
Fields§
§issuer: StringThe issuer URL exactly as the pass’s iss names it.
network_id: StringThe Lys network liminal’s subjects are placed under.
keys_path: PathBufPath to the issuer’s published key set as JSON, read once at start.
live: boolAsk the issuer live for deliberate decisions (opening a link, deploying a service, an administrator’s act) with the holder’s own pass. Off, Lys cannot be asked and every deliberate route refuses by that name; it never falls back to the pass.
machine: Option<MachineConfig>This liminal as a machine Lys knows, for links (ACCESS-002 R1).
services: Option<LysServicesConfig>Argus’s functions as liminal services, bound to Lys and the server’s publish path (ACCESS-003 R1).
broker: Option<BrokerConfig>Address-only broker and its observed-address UDP echo.
relay: Option<RelayConfig>Blind forwarding of marked relay streams.
membership: Option<MembershipConfig>Channel membership from Lys’s one shared membership contract (ACCESS-006 R1): the explicit product mapping of liminal channels to placed Lys resources, and the provider route it is asked through. Absent, no channel is membership-protected and every channel keeps its prior contract.
templates: Vec<ServiceTemplateConfig>The templates services are created from (SRV-028 R1): the only command lines this server will ever run for a seat.
api_url: Option<String>The base of Lys’s API routes (.../api/) for live asks, placements
and the service routes, when they are not served at the issuer
itself; absent, the issuer is the base, as before.
app_credential_path: Option<PathBuf>Path to this liminal’s Lys app credential, read once at start; a new service and its subjects are placed under the network with it (SRV-028 R3). Absent, every create is refused by name.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for LysConfig
impl<'de> Deserialize<'de> for LysConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for LysConfig
impl StructuralPartialEq for LysConfig
Auto Trait Implementations§
impl Freeze for LysConfig
impl RefUnwindSafe for LysConfig
impl Send for LysConfig
impl Sync for LysConfig
impl Unpin for LysConfig
impl UnsafeUnpin for LysConfig
impl UnwindSafe for LysConfig
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.