Devo prepopolare risorse e permessi nel mio sistema?

-1

Sto seguendo il modello rbac nel mio sistema. Voglio sapere se dovrei prepopolare la tabella delle risorse e delle autorizzazioni?

Ho risorse come contratti, contract_drafts, SLA (accordo sul livello di servizio), ecc. E permessi come creare un contratto, modificare il contratto, approvare il contratto, ecc.

Ora, voglio sapere se il sistema dovrebbe già avere le risorse e le autorizzazioni principali caricate al suo interno quando lo do agli utenti?

Perché se devo conoscere le autorizzazioni che un determinato ruolo ha su una risorsa del contratto ma quella risorsa del contratto non è stata ancora creata dall'amministratore?

Come posso assicurarmi che ci siano risorse contrattuali nel sistema?

O le uniche cose che possono essere sotto il controllo dell'amministratore sono ruoli e utenti? Ciò significa che le autorizzazioni e le risorse saranno predefinite. Deve solo assegnarli ai ruoli e agli utenti corretti.

Un'altra cosa che può accadere consentendo alle risorse di essere create dall'amministratore è che potrebbe anche creare una risorsa chiamata elettronica, ad esempio, che non ha nulla a che fare con il mio sistema.

Non esitate a chiedere chiarimenti.

    
posta imran.razak 10.05.2017 - 12:04
fonte

2 risposte

0

Questo è collegato alla tua altra domanda su RBAC e design del database . No, non dovresti dover prepopolare le autorizzazioni. Inoltre, se il record (contratto) non esiste, come puoi già inserire le autorizzazioni.

Questo è il punto in cui ABAC (controllo dell'accesso basato sull'attributo) è utile. In ABAC non è necessario eseguire il prepopolamento delle autorizzazioni (provisioning). L'autorizzazione viene verificata in fase di esecuzione in base all'identità dell'utente (Alice), all'azione desiderata (vista) e all'identità della risorsa (contratto n. 123).

Se ti attieni a RBAC, dovrai pensare al ciclo di vita dei tuoi oggetti. Quando viene creato un contratto? Chi lo possiede? Dovresti quindi precompilare le autorizzazioni (al momento della creazione)?

    
risposta data 11.05.2017 - 18:11
fonte
0

 I want to know if I should prepopulate the resources and permissions table?

...

Now, I want to know if the system should already have the main resources and permissions loaded into it when I give it to the users?

La risposta, come al solito è dipende .

Può dipendere da:

SLA

Il tuo cliente potrebbe aver incluso un carico di dati iniziale nello SLA. Supponiamo che i dati possano essere introdotti manualmente ma, a causa delle dimensioni, richiederebbe troppo tempo e sforzi. Pensa nell'amministratore solitario che carica centinaia o migliaia di utenti, risorse, ecc. Nel sistema manualmente.

Vincoli di sistema

Lo stesso scenario, un grande insieme di dati ma, questa volta, non c'è un'interfaccia pubblica (nessuna API, nessuna pagina web, nessuna app, ...)

Trasferimento dati legacy

Bene, solo quello. Pensa ai clienti che hanno archiviato le informazioni in documenti come: excels, xml, csv, pdf, ...

Se non sei sicuro del preload, chiedi prima al project manager. Anche se il carico iniziale non è stato risolto, il cliente potrebbe essere interessato.

Se è così, di solito è quest'ultimo che ti fornisce i dati o la loro fonte.

    
risposta data 12.05.2017 - 21:56
fonte