Skip to main content

BackendConfig

Struct BackendConfig 

Source
#[non_exhaustive]
pub struct BackendConfig { pub secure_cookie: bool, pub timezone: String, pub paths: BTreeMap<String, String>, pub path: String, pub trusted_proxies: Vec<String>, pub storage: String, }
Expand description

Deployment-level backend settings. Per-install brand and per-operator preferences live in the settings and preferences stores, not here.

Non-exhaustive: build one with Default and set fields, so a field added in a later release is additive.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§secure_cookie: bool

Set the Secure attribute on the admin session cookie. Enable behind HTTPS in production; leave off for plain-HTTP local development.

§timezone: String

The default display timezone for the admin (an IANA name like Asia/Kolkata). Storage is always UTC; this only affects how dates render. An operator’s own preference overrides it (later); it falls back to UTC.

§paths: BTreeMap<String, String>

Admin path overrides, keyed by module id ("rainmill.location") or by a module id and one contribution’s declared path ("rainmill.location/nodes"), the more specific winning. Values are absolute under the admin mount, so they survive a relocated panel. Lets a deployment move a plugin’s screens without forking it.

§path: String

The URL path the admin panel is mounted under, without a trailing slash (default /admin). Change it to move or obscure the panel (/manage, /backend). A leading slash is added if missing and a trailing slash is stripped; an empty value falls back to /admin.

§trusted_proxies: Vec<String>

Networks whose X-Forwarded-For header may be believed, as CIDR ranges ("10.0.0.0/8"). The header is caller-controlled, so it is read only when the connecting peer falls inside one of these; the client is then the rightmost address in the chain that is not itself a trusted proxy.

Empty (the default) trusts nothing and records the peer address, which is right for a directly bound server. Set it to the load balancer’s network when there is one: leaving it empty behind a proxy records the proxy on every row, and filling it in for a network that is not a proxy lets anyone on it forge the address in the audit log.

§storage: String

The directory files the admin keeps are stored under (default storage), relative to the working directory unless absolute. Uploaded import files go to private beneath it.

Trait Implementations§

Source§

impl Clone for BackendConfig

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for BackendConfig

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for BackendConfig

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl<'de> Deserialize<'de> for BackendConfig

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self> ⓘ

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self> ⓘ

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘ
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more