Hey everyone, I am new to SpiceDb and working on g...
# spicedb
l
Hey everyone, I am new to SpiceDb and working on getting it integrated into an application I am building. My app is multitenant where users can be in multiple tenants. Below is what I have created so far in the playground for my schema, am I going in the right direction or is there anything I need to change up? //Registered User of the System who can login to the platform
Copy code
definition user{}

//Organization
definition organization{
    relation administrator: user
    relation hr_director: user
    relation finance_director: user
    relation security_director: user
    relation member: user

    //Employee Permissions
    permission create_employees = administrator + hr_director
    permission read_employees = administrator + hr_director
    permission update_employees = administrator + hr_director
    permission delete_employees = administrator + hr_director

    //Accountable Permissions
    permission create_accountables = administrator + hr_director
    permission read_accountables = administrator + hr_director
    permission update_accountables = administrator + hr_director
    permission delete_accountables = administrator + hr_director
    //Department Permission
}

definition employee{
    //Organization this Employee belongs to
    relation org: organization

    permission create = org->create_employees
    permission read =  org->read_employees
    permission update = org->update_employees
    permission delete = org->delete_employees
}

definition accountable{
    relation org: organization
    relation dep: department
    permission create = org->create_employees
    permission read =  org->read_employees
    permission update = org->update_employees
    permission delete = org->delete_employees
}

definition department{
    relation org: organization
    relation head: user
    relation member: user
}