From 0223592b7eb1a80ff2b7c2ec95e2ad641da07ad8 Mon Sep 17 00:00:00 2001 From: Katharina Fey Date: Mon, 6 Aug 2018 16:13:33 +0200 Subject: More refactoring and trying to get keystores to work properly --- lockchain-core/src/users/rights.rs | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 lockchain-core/src/users/rights.rs (limited to 'lockchain-core/src/users/rights.rs') diff --git a/lockchain-core/src/users/rights.rs b/lockchain-core/src/users/rights.rs new file mode 100644 index 0000000..4404253 --- /dev/null +++ b/lockchain-core/src/users/rights.rs @@ -0,0 +1,22 @@ +use traits::AutoEncoder; + +/// Specifies access to a resource +#[derive(Hash, Serialize, Deserialize, Clone, PartialEq, Eq)] +pub enum Access { + /// Allows access to vault metadata & index files + Vault(Role), + /// Allows access to a record resource inside a vault + Record(Role, String), +} + +impl AutoEncoder for Access {} + +/// Specifies the capabilities of a user +#[derive(Hash, Serialize, Deserialize, Clone, PartialEq, Eq)] +pub enum Role { + Reader, + Editor, + Admin, +} + +impl AutoEncoder for Role {} -- cgit v1.2.3