[RBAC] Problema concettuale

di il
2 risposte

[RBAC] Problema concettuale

In questo schema, i cerchi gialli contengono i permessi delle azioni che (i rossi) gli utenti possono effettuare e i celesti il ruolo. I ruoli dei livelli superiori ereditano tutti i permessi dei livelli inferiori, ma allo stesso tempo ci possono essere più ruoli sullo stesso livello che avranno al loro interno permessi differenti.
La traccia mi chiede: "aggiungere vincoli di incompatibilità tra Cardiologo e Neurologo, e tra Infermiere e Resident".

Conosco già il linguaggio che RBAC utilizza per la formalizzazione dei vincoli su un sistema o organizzazione, ma il mio problema è concettuale.
In pratica devo formalizzare che un Cardiologo non potrà mai assumere il ruolo di Neurologo e mai eseguire un'azione del ruolo Neurologo e viceversa altrimenti sorgerebbero conflitti di interessi e quindi incompatibilità? (stessa cosa per Infermiere e Resident).
O cosa si intende per vincoli di incompatibilità??

2 Risposte

  • Re: [RBAC] Problema concettuale

    Salve,
    noto con piacere che lei si stia dando tanto da fare, se ha bisogno d'aiuto mi contatti pure per e-mail.
    A lunedì.
    Cordiali saluti.
  • Re: [RBAC] Problema concettuale

    Se M = è medico C = è cardiologo N = è neurologo R = è residente I = è infermiere e io non dico una fesseria, allora si può formalizzare il tutto tramite linguaggio predicativo nel seguente modo:
    
    Ax(C(x) v N(x)) -> M(x) ^ ~Ex( (M(x) ^ R(x)) v (M(x) ^ I(x)))
    
    dove:
    v = disgiunzione
    ~ = negazione
    ^ = congiunzione
    E = quantificatore esistenziale
    A = quantificatore universale
    -> = condizionale

    In LaTeX
    
    $\forall x (C(x) \vee N(x)) \rightarrow M(x) \wedge \neg \exists x (M(x) \wedge R(x) \vee M(x) \wedge I(x)) $
    
    Sta a te poi trovare eventuali errori e tradurre in RBAC.
Devi accedere o registrarti per scrivere nel forum
2 risposte