authress/models/
statement.rs

1
2
3
4#[derive(Default, Clone, Debug, PartialEq, Serialize, Deserialize)]
5pub struct Statement {
6    #[serde(rename = "roles")]
7    pub roles: Vec<String>,
8    #[serde(rename = "resources")]
9    pub resources: Vec<crate::models::Resource>,
10    /// The list of users this statement applies to. Users and groups can be set at either the statement level or the record level, but not both.
11    #[serde(rename = "users", skip_serializing_if = "Option::is_none")]
12    pub users: Option<Vec<crate::models::User>>,
13    /// The list of groups this statement applies to. Users in these groups will be receive access to the resources listed. Users and groups can be set at either the statement level or the record level, but not both.
14    #[serde(rename = "groups", skip_serializing_if = "Option::is_none")]
15    pub groups: Option<Vec<crate::models::LinkedGroup>>,
16}
17
18impl Statement {
19    pub fn new(roles: Vec<String>, resources: Vec<crate::models::Resource>) -> Statement {
20        Statement {
21            roles,
22            resources,
23            users: None,
24            groups: None,
25        }
26    }
27}
28
29