authentik_rust/models/
user_assigned_object_permission.rs1use crate::models;
12
13#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct UserAssignedObjectPermission {
16 #[serde(rename = "pk")]
17 pub pk: i32,
18 #[serde(rename = "username")]
20 pub username: String,
21 #[serde(rename = "name")]
23 pub name: String,
24 #[serde(rename = "is_active", skip_serializing_if = "Option::is_none")]
26 pub is_active: Option<bool>,
27 #[serde(rename = "last_login", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
28 pub last_login: Option<Option<String>>,
29 #[serde(rename = "email", skip_serializing_if = "Option::is_none")]
30 pub email: Option<String>,
31 #[serde(rename = "attributes", skip_serializing_if = "Option::is_none")]
32 pub attributes: Option<std::collections::HashMap<String, serde_json::Value>>,
33 #[serde(rename = "uid")]
34 pub uid: String,
35 #[serde(rename = "permissions")]
36 pub permissions: Vec<models::UserObjectPermission>,
37 #[serde(rename = "is_superuser")]
38 pub is_superuser: bool,
39}
40
41impl UserAssignedObjectPermission {
42 pub fn new(pk: i32, username: String, name: String, uid: String, permissions: Vec<models::UserObjectPermission>, is_superuser: bool) -> UserAssignedObjectPermission {
44 UserAssignedObjectPermission {
45 pk,
46 username,
47 name,
48 is_active: None,
49 last_login: None,
50 email: None,
51 attributes: None,
52 uid,
53 permissions,
54 is_superuser,
55 }
56 }
57}
58