pub struct ApprovedMission {
pub s256: String,
pub mission: Value,
}Expand description
A mission as a Person Server approved it, checked against its hash.
Fields§
§s256: StringBASE64URL(SHA-256(mission bytes)): the mission_s256 later tokens carry.
mission: ValueThe decoded mission document.
Implementations§
Source§impl ApprovedMission
impl ApprovedMission
Sourcepub fn from_approval(body: &Value) -> Option<Self>
pub fn from_approval(body: &Value) -> Option<Self>
The mission an approval body carries (s256, and mission as
base64url bytes), when its bytes hash to the s256 it names.
use base64::Engine;
let bytes = br#"{"description":"Sydney","approved_resources":["https://api.booking.example"]}"#;
let body = serde_json::json!({
"s256": aauth_protocol::s256(bytes),
"mission": base64::engine::general_purpose::URL_SAFE_NO_PAD.encode(bytes),
});
let mission = ApprovedMission::from_approval(&body).unwrap();
assert_eq!(mission.approved_resources(), ["https://api.booking.example"]);Sourcepub fn approved_resources(&self) -> Vec<String>
pub fn approved_resources(&self) -> Vec<String>
The resources the mission was approved for.
Trait Implementations§
Source§impl Clone for ApprovedMission
impl Clone for ApprovedMission
Source§impl Debug for ApprovedMission
impl Debug for ApprovedMission
Source§impl<'de> Deserialize<'de> for ApprovedMission
impl<'de> Deserialize<'de> for ApprovedMission
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for ApprovedMission
impl PartialEq for ApprovedMission
Source§impl Serialize for ApprovedMission
impl Serialize for ApprovedMission
impl StructuralPartialEq for ApprovedMission
Auto Trait Implementations§
impl Freeze for ApprovedMission
impl RefUnwindSafe for ApprovedMission
impl Send for ApprovedMission
impl Sync for ApprovedMission
impl Unpin for ApprovedMission
impl UnsafeUnpin for ApprovedMission
impl UnwindSafe for ApprovedMission
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more