aboutsummaryrefslogtreecommitdiff
path: root/crates/secd/src/lib.rs
diff options
context:
space:
mode:
authorbenj <benj@rse8.com>2023-06-12 15:39:10 -0700
committerbenj <benj@rse8.com>2023-06-12 15:39:10 -0700
commit3406b370fe290559ff2445097a380d6f48d0f9af (patch)
tree3e62ca57d6426fd2507950a4fe434fc06491fcd6 /crates/secd/src/lib.rs
parentb3ba31a1572ecec38115385fafe4a4e87ca39361 (diff)
downloadsecdiam-3406b370fe290559ff2445097a380d6f48d0f9af.tar
secdiam-3406b370fe290559ff2445097a380d6f48d0f9af.tar.gz
secdiam-3406b370fe290559ff2445097a380d6f48d0f9af.tar.bz2
secdiam-3406b370fe290559ff2445097a380d6f48d0f9af.tar.lz
secdiam-3406b370fe290559ff2445097a380d6f48d0f9af.tar.xz
secdiam-3406b370fe290559ff2445097a380d6f48d0f9af.tar.zst
secdiam-3406b370fe290559ff2445097a380d6f48d0f9af.zip
🤮: add check_list_namespaces as a temporary hack while using spice
Diffstat (limited to '')
-rw-r--r--crates/secd/src/lib.rs12
1 files changed, 8 insertions, 4 deletions
diff --git a/crates/secd/src/lib.rs b/crates/secd/src/lib.rs
index eb5d33d..c84ce44 100644
--- a/crates/secd/src/lib.rs
+++ b/crates/secd/src/lib.rs
@@ -3,7 +3,7 @@ mod client;
mod util;
use async_trait::async_trait;
-use auth::z::Relationship;
+use auth::z::{Namespace, Relation, Relationship, Subject};
use client::{
email::{EmailMessenger, EmailMessengerError, LocalMailer, Sendgrid},
spice::{Spice, SpiceError},
@@ -145,9 +145,13 @@ pub trait Authentication {
#[async_trait]
pub trait Authorization {
async fn check(&self, r: &Relationship) -> Result<bool, SecdError>;
- async fn expand(&self) -> Result<(), SecdError>;
- async fn read(&self) -> Result<(), SecdError>;
- async fn watch(&self) -> Result<(), SecdError>;
+ async fn check_list_namespaces(
+ &self,
+ ns: &Namespace,
+ subj: &Subject,
+ relation: &Relation,
+ ) -> Result<Vec<Uuid>, SecdError>;
+ async fn check_list_subjects(&self) -> Result<Vec<i32>, SecdError>;
async fn write(&self, relationships: &[Relationship]) -> Result<(), SecdError>;
}