github.com/treeverse/lakefs@v1.24.1-0.20240520134607-95648127bfb0/clients/rust/src/models/login_config.rs (about) 1 /* 2 * lakeFS API 3 * 4 * lakeFS HTTP API 5 * 6 * The version of the OpenAPI document: 1.0.0 7 * Contact: services@treeverse.io 8 * Generated by: https://openapi-generator.tech 9 */ 10 11 use crate::models; 12 13 #[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)] 14 pub struct LoginConfig { 15 /// RBAC will remain enabled on GUI if \"external\". That only works with an external auth service. 16 #[serde(rename = "RBAC", skip_serializing_if = "Option::is_none")] 17 pub rbac: Option<Rbac>, 18 /// primary URL to use for login. 19 #[serde(rename = "login_url")] 20 pub login_url: String, 21 /// message to display to users who fail to login; a full sentence that is rendered in HTML and may contain a link to a secondary login method 22 #[serde(rename = "login_failed_message", skip_serializing_if = "Option::is_none")] 23 pub login_failed_message: Option<String>, 24 /// secondary URL to offer users to use for login. 25 #[serde(rename = "fallback_login_url", skip_serializing_if = "Option::is_none")] 26 pub fallback_login_url: Option<String>, 27 /// label to place on fallback_login_url. 28 #[serde(rename = "fallback_login_label", skip_serializing_if = "Option::is_none")] 29 pub fallback_login_label: Option<String>, 30 /// cookie names used to store JWT 31 #[serde(rename = "login_cookie_names")] 32 pub login_cookie_names: Vec<String>, 33 /// URL to use for logging out. 34 #[serde(rename = "logout_url")] 35 pub logout_url: String, 36 } 37 38 impl LoginConfig { 39 pub fn new(login_url: String, login_cookie_names: Vec<String>, logout_url: String) -> LoginConfig { 40 LoginConfig { 41 rbac: None, 42 login_url, 43 login_failed_message: None, 44 fallback_login_url: None, 45 fallback_login_label: None, 46 login_cookie_names, 47 logout_url, 48 } 49 } 50 } 51 /// RBAC will remain enabled on GUI if \"external\". That only works with an external auth service. 52 #[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)] 53 pub enum Rbac { 54 #[serde(rename = "simplified")] 55 Simplified, 56 #[serde(rename = "external")] 57 External, 58 } 59 60 impl Default for Rbac { 61 fn default() -> Rbac { 62 Self::Simplified 63 } 64 } 65