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