rs-tenant 0.4.0

Multi-tenant RBAC authorization engine for Rust
Documentation
use crate::ids::RoleId;
use crate::scope::GrantScope;

/// 角色分配及其显式授权范围。
#[derive(Clone, Debug, Eq, PartialEq, Hash)]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct RoleAssignment {
    /// 被分配的角色。
    pub role: RoleId,
    /// 该分配授予的范围。
    pub scope: GrantScope,
}

impl RoleAssignment {
    /// 创建角色分配。
    pub fn new(role: RoleId, scope: GrantScope) -> Self {
        Self { role, scope }
    }
}