66
GESTIONE UTENTI E ACCESSI 1 B u r s t n e t I n f o r m a t i c a

GESTIONE UTENTI E ACCESSI

  • Upload
    gaston

  • View
    52

  • Download
    0

Embed Size (px)

DESCRIPTION

GESTIONE UTENTI E ACCESSI. Gestione utenti e accessi. Semantica dell’ utente Tipi di account Criteri per le password Forme di autenticazione Utenti e gruppi in Unix Utenti e gruppi in Windows Dominio e gruppo di lavoro Access control. Utenti Semantica dell’utente. - PowerPoint PPT Presentation

Citation preview

Page 1: GESTIONE UTENTI E ACCESSI

Burstnet Informatica

1

GESTIONE UTENTI E ACCESSI

Page 2: GESTIONE UTENTI E ACCESSI

2

GESTIONE UTENTI E ACCESSISemantica dell’ utenteTipi di accountCriteri per le passwordForme di autenticazioneUtenti e gruppi in UnixUtenti e gruppi in WindowsDominio e gruppo di lavoroAccess controlBurstnet Informatica

Page 3: GESTIONE UTENTI E ACCESSI

3

UTENTISEMANTICA DELL’UTENTE

Un account utente consente di autenticarsi ai servizi di un sistema. Generalmente fornisce la

possibilità di essere autorizzati ad accedervi.

Tuttavia, l'autenticazione non comporta automaticamente l'autorizzazione.

Burstnet Informatica

Page 4: GESTIONE UTENTI E ACCESSI

4

UTENTISEMANTICA DELL’UTENTE I sistemi informatici sono suddivisi in

due gruppi in base al tipo di utenti che hanno:single-user systems: presentano un

solo utente senza distinzione di privilegi.

multi-user systems: più utenti possono accedere al sistema con differenti privilegi. E’ richiesta l’autenticazione.

Burstnet Informatica

Page 5: GESTIONE UTENTI E ACCESSI

5

UTENTITIPI DI ACCOUNT

L'account limitato: è destinato a persone alle quali dovrà essere vietato il cambiamento della maggior parte delle impostazioni del computer e l'eliminazione di file importanti. Un utente con un account limitato solitamente: Non può installare software o hardware, ma può

accedere ai programmi che sono già stati installati sul computer e per i quali gli è stato precedentemente concesso l’utilizzo.

Può modificare la propria password.Non può cambiare il suo nome account o il tipo di

account. Burstnet Informatica

Page 6: GESTIONE UTENTI E ACCESSI

6

UTENTITIPI DI ACCOUNT

L'account amministratore del computer è destinato a chi può fare modifiche a livello di sistema sul computer, installare programmi e accedere a tutti i file sul computer.

Solo un utente con account amministratore del computer ha pieno accesso ad altri account utente sul computer.

Burstnet Informatica

Page 7: GESTIONE UTENTI E ACCESSI

7

UTENTITIPI DI ACCOUNT L‘account amministratore può:

Creare,eliminare e modificare gli account utente sul computer.

Gestire le password degli altri account.Modificare i nomi degli altri account, le

password e tipi di account.Modificare tutti i file presenti sul

computerInstallare nuovo hardware.In alcuni casi, l’unico utente che può

spegnere il computer.Burstnet Informatica

Page 8: GESTIONE UTENTI E ACCESSI

8

UTENTICRITERI PER LE PASSWORD

Quando entrate in contatto con un servizio di un computer (login, email, accesso web , etc.) dovete identificare voi stessi e successivamente autenticare questa identità al fine di provare chi dichiarate di essere.

l’autenticazione è la base per eseguire l’autorizzazione

Burstnet Informatica

Page 9: GESTIONE UTENTI E ACCESSI

9

UTENTICRITERI PER LE PASSWORD

L’autenticazione dell’utente avviene attraverso l’utilizzo di uno o più dei seguenti metodi:In base a qualcosa che conoscete es.

Password, Pin code ecc.In base a qualcosa che avete ( ex hardware

token, authentication token, USB token, cryptographic token)

In base a qualcosa che fateSfruttando qualcosa di voi (biometrica)In base a dove vi trovate

Burstnet Informatica

Page 10: GESTIONE UTENTI E ACCESSI

10

UTENTICRITERI PER LE PASSWORD

Problematiche:Se qualcuno vi ruba e successivamente utilizza la

vostra password è difficile provare la vostra innocenza.

La password può essere “indovinata”.Spesso, le password sono banali e riconducibili a

qualcosa di voi.Qualcuno o “qualcosa” vi può osservare mentre

digitate la password. Un intruso può sbirciare mentre state digitando la password. Esistono tecniche evolute per carpirvi le password come il “login

spoofing” o lo “sniffing di rete”

Attacchi on-line o off-line sfruttando dictionary attack.

Burstnet Informatica

Page 11: GESTIONE UTENTI E ACCESSI

11

UTENTICRITERI PER LE PASSWORDConsigli: Non lasciate mai password vuote o di default. Sensibilizzate i vostri utenti all’utilizzo di password

“forti”Utilizzate Password minimo di 8 caratteriRichiedete l’inserimento di caratteri non alfa

numericiMaiuscole & minuscole Impostate una scadenza alle password

Provate a usare programmi di “cracking” per verificare le debolezze delle vostre password.

Per gli utenti remoti: è consigliabile l’ utilizzo di password “one-shot” oppure di altri metodi (ex certificati digitali).

Burstnet Informatica

Page 12: GESTIONE UTENTI E ACCESSI

12

UTENTI

Login spoofing Windows permette il login tramite la

sequenza Ctrl-Alt-Del, questo serve per creare un canale fidato tra voi che utilizzate la tastiera e il kernel del sistema operativo.

Come potete essere sicuri che Windows sta girando sulla vostra macchina? Semplice fate reboot del computer.

Come potete essere sicuri che l’immagine del Sistema Operativo che è sul vostro disco sia vermante Windows? Reinstallate Windows dal cd …

Burstnet Informatica

Page 13: GESTIONE UTENTI E ACCESSI

13

UTENTIFORME DI AUTENTICAZIONE Autenticazione basata su azioni:

Velocità con cui digitiamo i tasti sulla tastiera Velocità, accelerazione e pressione che

esercitiamo mentre scriviamo Biometrica Luogo in cui vi trovate (potete utilizzare GPS,

dati GSM Cell, ecc.). Non textual password

Déjà Vu: A user study using images for authentication

Burstnet Informatica

Page 14: GESTIONE UTENTI E ACCESSI

14

UTENTI E GRUPPI IN UNIXL'amministrazione degli utenti è una

parte critica per il mantenimento di un sistema sicuro.

Ripasso login/on.Ogni utente dovrebbe avere un login

univoco. I nomi di login evitano il problema che

un utente cancelli i file degli altri …Account utente: root e normal user.Strumento sudo.

Burstnet Informatica

Page 15: GESTIONE UTENTI E ACCESSI

15

UTENTI E GRUPPI IN UNIX I sistemi Unix tradizionali mantengono le

informazioni sugli account degli utenti, comprese le password criptate, in un file di testo chiamato "/etc/passwd".

Il file /etc/passwd è leggibile a tutti perchè contiene informazioni che vanno al di là della password

Burstnet Informatica

Page 16: GESTIONE UTENTI E ACCESSI

16

UTENTI E GRUPPI IN UNIX Composizione di un file /etc/passwd con

shadow password:smithj:x:561:561:Joe

Smith:/home/smithj:/bin/bash file "/etc/shadow" contiene la password e le

informazioni sulla scadenza degli account degli utenti, e appare così:smithj:Ep6mckrOLChF.:10063:0:99999:7:::

Burstnet Informatica

Page 17: GESTIONE UTENTI E ACCESSI

17

UTENTI E GRUPPI IN UNIXUsers on Linux systems are assigned to one ormore groups for following reasons: To share files or other resource with a small

number of users Ease of user management Ease of user monitoring Group membership is perfect solution for large

Linux (UNIX) installation. Group membership gives you or your user

special access to files and directories or devices which are permitted to that group

Burstnet Informatica

Page 18: GESTIONE UTENTI E ACCESSI

18

UTENTI E GRUPPI IN UNIX Gli utenti possono essere raccolti

dall’amministratore all’interno d’insiemi facenti capo a uno scopo o a un progetto, questi insiemi prendono il nome di gruppi. Ogni gruppo, lavorerà sulla base delle

funzioni e dei compiti assegnati ai diversi utenti da cui è composto e, non potrà interferire sul lavoro degli altri gruppi sempre che questo “privilegio” non gli sia accordato

Il file /etc/group definisce quali utenti appartengono ad un determinato gruppo

Esempio di un entry nel file /etc/groupcdrom:x:24:vivek,student13,raj

Burstnet Informatica

Page 19: GESTIONE UTENTI E ACCESSI

19

UTENTI E GRUPPI IN UNIX

UID e GID

SETUID e SETGID

Sticky bit

Burstnet Informatica

Page 20: GESTIONE UTENTI E ACCESSI

20

UTENTI E GRUPPI IN UNIXLa rappresentazione ottale dei permessi consiste in

un numero di quattro cifre in base otto (da 0 a 7).

Ai permessi di lettura, scrittura ed esecuzione sono assegnati dei numeri:

4 – lettura 2 – scrittura 1 – esecuzione

Anche agli altri permessi viene assegnato un numero: 4 – set user ID 2 – set group ID 1 – sticky

Burstnet Informatica

Page 21: GESTIONE UTENTI E ACCESSI

21

UTENTI E GRUPPI IN UNIX drwxrwxrwx - Segnala che il file è

una directory  - rwxrwxrwx - Gli attributi marcati in rosso

si riferiscono all'utente proprietario del file;

-rwxrwxrwx - Gli attributi marcati in rosso si riferiscono al gruppo di cui l'utente fa parte (se non è il proprietario del file, ma fa parte del gruppo di utenti assegnato al file);

-rwxrwxrwx - Gli attributi marcati in rosso si riferiscono a tutti gli altri utenti o gruppi che non sono quelli assegnati al file.

Burstnet Informatica

Page 22: GESTIONE UTENTI E ACCESSI

22

UTENTI E GRUPPI IN UNIX drwxr-xr-x indica una directory leggibile, scrivibile e attraversabile

dal proprietario, leggibile e attraversabile per il gruppo e per gli altri.

drwx------ indica una directory leggibile, scrivibile e attraversabile dal proprietario, ma inaccessibile per tutti gli altri.

drwxrwxrwt indica una directory leggibile, scrivibile e attraversabile da tutti e con il permesso sticky.

-rw------- indica un file leggibile e scrivibile solo dal proprietario -rw-r--r-- indica un file leggibile da tutti, ma scrivibile solo dal

proprietario -------r-- indica un file leggibile da tutti eccetto il proprietario e gli

utenti appartenenti al gruppo di utenti assegnato al file. -r-sr-xr-x indica un file eseguibile leggibile ed eseguibile da tutti con

anche il permesso speciale set user ID. -r-Sr--r-- indica un file leggibile da tutti con anche il permesso

speciale set user ID ma senza il permesso di esecuzione. drwxrws--- indica una directory leggibile, scrivibile e attraversabile

dal proprietario e dal gruppo di utenti assegnato alla directory, con anche il permesso speciale set group ID.

Burstnet Informatica

Page 23: GESTIONE UTENTI E ACCESSI

23

UTENTI E GRUPPI IN UNIX Comandi utili alla gestione degli utenti:

sudo adduser NOME_UTENTEsudo deluser NOME_UTENTE sudo chown -R root:root

/home/NOME_UTENTE/Per bloccare o sbloccare temporaneamente

l'account di un utente, utilizzare, rispettivamente, i seguenti comandi:sudo passwd -l NOME_UTENTEsudo passwd -u NOME_UTENTE

sudo addgroup NOME_GRUPPO sudo delgroup NOME_GRUPPOsudo adduser NOME_UTENTE NOME_GRUPPO

Burstnet Informatica

Page 24: GESTIONE UTENTI E ACCESSI

24

UTENTI E GRUPPI IN WINDOWS Mediante Utenti e gruppi locali è possibile limitare la

possibilità di utenti e gruppi di eseguire determinate operazioni tramite l'assegnazione di autorizzazioni e diritti.

Come in Unix anche in Windows abbiamo diverse tipologie di account:Account utente: gli account dell'utente

permettono di aprire una sessione sulla rete e di accedere alle risorse di rete.

Guest: permette agli utenti occasionali di aprire una sessione e accedere al computer locale. Di default è disattivo.

Amministratore: serve a gestire la configurazione globale dei computer e dei domini. Può effettuare tutti le operazioni sul computer o in rete.

Burstnet Informatica

Page 25: GESTIONE UTENTI E ACCESSI

25

UTENTI E GRUPPI IN WINDOWS

Consigli utili:Disattivate l'account guest eviterete

così a chiunque di connettersi al vostro computer

Modificate il nome dell'account amministratore ridurrete il rischio di intrusione attraverso questo account utente. Se il vostro attaccante conosce già il vostro nome

utente possiede già metà delle informazioni per entrare nel vostro sistema.

qual è l’altra metà d’informazione?Burstnet Informatica

Page 26: GESTIONE UTENTI E ACCESSI

26

UTENTI E GRUPPI IN WINDOWS

Windows permette di gestire gli utenti per gruppo, cioè permette di definire degli insiemi di utenti che hanno lo stesso tipo di autorizzazioni classificandoli in categorie

I gruppi semplificano quindi l'amministrazione dato che è possibile attribuire delle autorizzazioni a più utenti con una singola operazione.

Burstnet Informatica

Page 27: GESTIONE UTENTI E ACCESSI

27

UTENTI E GRUPPI IN WINDOWS

I gruppi locali: servono a dare agli utenti delle autorizzazioni di accesso ad una risorsa di rete. Servono anche a dare agli utenti dei diritti per eseguire delle azioni di sistema (es. salvare e recuperare dei file).

I gruppi globali: servono a organizzare gli account utenti di dominio. Servono soprattutto nelle reti a domini multipli, quando gli utenti di un dominio devono poter accedere alle risorse di un altro dominio.

Burstnet Informatica

Page 28: GESTIONE UTENTI E ACCESSI

28

UTENTI E GRUPPI IN WINDOWS

Gruppi predefiniti in Windows:Administrators DHCP Administrators Guests Power Users User

Burstnet Informatica

Page 29: GESTIONE UTENTI E ACCESSI

29

DOMINIO E GRUPPO DI LAVORO

Gruppo di lavoro: Tutti i computer sono peer ( nodi equivalenti).

Nessuno di essi ha il controllo sugli altri. In ogni computer è configurato un insieme di

account utente. Per accedere a uno dei computer nel gruppo di lavoro, è necessario disporre di un account in tale computer.

Sono in genere presenti non più di venti computer. Un gruppo di lavoro non è protetto tramite una

password. Tutti i computer devono trovarsi nella stessa rete

locale o subnet.

Burstnet Informatica

Page 30: GESTIONE UTENTI E ACCESSI

30

DOMINIO E GRUPPO DI LAVORO

Gruppo Home: I computer presenti in una rete domestica

possono appartenere a un gruppo denominato home.

Un gruppo home semplifica la condivisione di immagini, musica, video, documenti e stampanti con altri utenti in una rete domestica.

Un gruppo home viene protetto tramite una password, ma questa deve essere digitata solo una volta, ovvero durante l'aggiunta del computer al gruppo home.

Burstnet Informatica

Page 31: GESTIONE UTENTI E ACCESSI

31

DOMINIO E GRUPPO DI LAVORO

Burstnet Informatica

Page 32: GESTIONE UTENTI E ACCESSI

32

DOMINIO E GRUPPO DI LAVORO

DOMINIO Uno o più computer sono server. Gli amministratori di rete utilizzano i server

per controllare la sicurezza e le autorizzazioni per tutti i computer del dominio.

Questo semplifica l'esecuzione di modifiche in quanto le modifiche vengono eseguite automaticamente in tutti i computer.

Gli utenti di dominio devono specificare una password o altre credenziali ogni volta che accedono al dominio.

Burstnet Informatica

Page 33: GESTIONE UTENTI E ACCESSI

33

DOMINIO E GRUPPO DI LAVORO Se si dispone di un account utente sul dominio,

è possibile accedere a qualsiasi computer nel dominio senza un account specifico per tale computer.

È in genere possibile apportare solo modifiche limitate alle impostazioni di un computer, in quanto gli amministratori di rete spesso desiderano garantire la coerenza tra computer.

Un dominio può includere migliaia di computer. I computer possono trovarsi in reti locali

diverse.

Burstnet Informatica

Page 34: GESTIONE UTENTI E ACCESSI

34

DOMINIO E GRUPPO DI LAVOROWindows Domain

ACTIVE DIRECTORY: Directory Servizio di directory Active directory è un insieme di servizi di rete

meglio noti come directory service adottati dai sistemi operativi Microsoft a partire da Windows 2000 Server.

Active Directory si fonda sui concetti di DOMINIO e di Directory che in inglese stanno a significare "elenco telefonico".

Burstnet Informatica

Page 35: GESTIONE UTENTI E ACCESSI

35

DOMINIO E GRUPPO DI LAVORO

ACTIVE DIRECTORY Cosa c’è dentro una directory di active directory?

Ci sono informazioni per: Risorse condivise Volumi Stampanti Account computer Utente della rete

Con un singolo accesso alla rete, gli amministratori possono gestire l'organizzazione e i dati della directory a qualsiasi livello della rete e gli utenti di rete autorizzati possono accedere alle risorse in qualsiasi punto della rete.

Account computerBurstnet Informatica

Page 36: GESTIONE UTENTI E ACCESSI

36

DOMINIO E GRUPPO DI LAVORO Active Directory include inoltre le seguenti

funzionalità: Un insieme di regole, denominato schema, che

definisce le classi di oggetti e attributi contenute nella directory.

Un catalogo globale che contiene informazioni su ogni oggetto della directory. 

Un meccanismo di ricerca e indicizzazione per la pubblicazione e il reperimento degli oggetti e delle relative proprietà da parte di utenti o applicazioni di rete. 

Un servizio di replica che distribuisce i dati della directory su una rete.

Burstnet Informatica

Page 37: GESTIONE UTENTI E ACCESSI

37

DOMINIO E GRUPPO DI LAVORO

Protezione dell'accesso alla rete con Active directory Il Single sign-on (SSO, traducibile come autenticazione

unica o identificazione unica) è un sistema specializzato che permette ad un utente di autenticarsi una sola volta e di accedere a tutte le risorse informatiche alle quali è abilitato.

Prima di consentire l'accesso alla rete, Active Directory richiede la conferma dell'identità dell'utente mediante un processo noto come autenticazione. Per ottenere l'accesso alla rete, l'utente deve semplicemente eseguire un single sign-on al dominio o ai domini trusted.

Una volta confermata l'identità dell'utente, la LSA (Local Security Authority) del controller di dominio che esegue l'autenticazione genera un token di accesso che determina il livello di accesso dell'utente alle risorse di rete.

Burstnet Informatica

Page 38: GESTIONE UTENTI E ACCESSI

38

DOMINIO E GRUPPO DI LAVORO On Windows Server Systems, a domain

controller (DC) is a server that responds to security authentication requests (logging in, checking permissions, etc.) within the Windows Server domain.

PDC is a Primary Domain Controller The PDC maintains the master copy of the

directory database and validates users. BDC is a Backup Domain Controller. A Backup Domain Controller contains a copy of

the directory database and can validate users.

Burstnet Informatica

Page 39: GESTIONE UTENTI E ACCESSI

39

DOMINIO E GRUPPO DI LAVORO If the PDC fails then a BDC can be promoted to

a PDC. Possible data loss is user changes that have not yet been replicated from the PDCto the BDC.

A PDC can be demoted to a BDC if one of the BDC's is promoted to the PDC.

You must install a PDC before any other domain servers

Burstnet Informatica

Page 40: GESTIONE UTENTI E ACCESSI

40

DOMINIO E GRUPPO DI LAVORO

Linux su reti Windows Le operazioni di condivisione all‘interno di una

rete Windows funzionano attraverso un protocollo di alto livello che ha il compito di proiettare sulla rete locale alcune entità come file, cartelle e stampanti. Il nome di questo protocollo è SMB (Short Message Block).

Qualunque sistema operativo che implementi questo protocollo è in grado di accedere alle risorse di una rete Windows e di fornire le proprie risorse a una rete di computer.

Linux dispone di un’ottima implementazione di SMB, contenuta in un pacchetto denominato samba(www.samba.org).Burstnet Informatica

Page 41: GESTIONE UTENTI E ACCESSI

41

DOMINIO E GRUPPO DI LAVORO

Samba offre le seguenti caratteristiche: Condivisione file e stampanti in rete Supporto gruppo di lavoro (Workgroup) Supporto controller di dominio (Primary Domain

Controller) Supporto come membro di Active Directory Supporto autenticazione in dominio Windows Supporto Ldap Supporto Wins Gestione Master Browser List Autenticazione Kerberos

Burstnet Informatica

Page 42: GESTIONE UTENTI E ACCESSI

42

DOMINIO E GRUPPO DI LAVORO Esempio di una configurazione minimale del

file /etc/smb.conf [public] comment = cartella condivisa path = /home/utente/cartella-condivisa public = YES writable = YES security = USER smb passwd file = /etc/samba/smbpasswd encrypt passwords = YES log file = /var/log/samba/%m.log max log size = 100 log level = 1

Burstnet Informatica

Page 43: GESTIONE UTENTI E ACCESSI

43

ACCESS CONTROL Una Access control list (ACL), è un

meccanismo generalmente usato in informatica per esprimere regole complesse.

Meglio … una ACL è una lista ordinata di regole che viene usata per prendere una decisione, ad esempio se far passare o meno un pacchetto o se permettere o meno ad un certo utente l'accesso ad un file.

Utilizzi: Configurazione di Firewall o proxy. Configurazione diritti di accesso a file e directory.

Burstnet Informatica

Page 44: GESTIONE UTENTI E ACCESSI

44

ACCESS CONTROL Its function is to control which principals

(persons, processes, machines, . . .) have access to which resources in the system which files they can read, which programs they can execute, how they share data with other principals, and so on.

The access controls provided with an operating system typically authenticate principals using some mechanism such as passwords or Kerberos, then mediate their access to files, communications ports, and other system resources.

Burstnet Informatica

Page 45: GESTIONE UTENTI E ACCESSI

45

ACCESS CONTROL The principle of least privilege, also known as

the principle of minimal privilege or just least privilege

Requires that in a particular abstraction layer of a computing environment, every module (such as a process, a user or a program on the basis of the layer we are considering) must be able to access only such information  and resources that are necessary to its legitimate purpose.

Burstnet Informatica

Page 46: GESTIONE UTENTI E ACCESSI

46

ACCESS CONTROL

Principio di “Fail-safe defaults” nessun soggetto ha diritti per default.

Principio di “Separazione dei privilegi”: Un sistema non dovrebbe concedere permessi in base ad una singola condizione.

Principio di “Accesso Mediato” Tutti gli accessi ad un oggetto devono essere controllati.

Burstnet Informatica

Page 47: GESTIONE UTENTI E ACCESSI

47

ACCESS CONTROL La protezione

L'insieme dei meccanismi utilizzati in un sistema informatico per il controllo di accesso alle risorse.

Tale insieme di meccanismi deve formare una Trusted Computing Base (TCB)La somma di tutto l'hardware e il

software necessari per garantire le politiche di sicurezza.

Burstnet Informatica

Page 48: GESTIONE UTENTI E ACCESSI

48

ACCESS CONTROL Le funzionalità che devono essere fornite

dalla TCB:Creazione di processiScheduling dei processiGestione della memoriaGestione dell'I/OGestione del file system

Burstnet Informatica

Page 49: GESTIONE UTENTI E ACCESSI

49

ACCESS CONTROL Dalla protezione all'autorizzazione

Una volta messo in piedi un meccanismo di protezione, è necessario risolvere il problema dell'autorizzazione

Autorizzazione L'insieme delle politiche e dei meccanismi

utilizzati per valutare se un particolare soggetto è autorizzato a compiere particolari operazioni su un oggetto

Burstnet Informatica

Page 50: GESTIONE UTENTI E ACCESSI

50

ACCESS CONTROL Un dominio di protezione è un insieme di oggetti

e i tipi di operazioni che possono essere effettuati su ogni oggetto.

Più formalmente è un'insieme di coppie del tipo: <oggetto, insieme di operazioni>.

Ogni soggetto opera all’interno di un dominio di protezione.

Burstnet Informatica

Page 51: GESTIONE UTENTI E ACCESSI

51

ACCESS CONTROL L’associazione fra processo e dominio può essere

statica o dinamica:è statica se a un soggetto viene

associato un dominio al momento dell’attivazione e non può essere cambiato per tutta la vita del soggetto.

è dinamica se è possibile durante la vita del processo cambiare il dominio di protezione.

Burstnet Informatica

Page 52: GESTIONE UTENTI E ACCESSI

52

ACCESS CONTROL Matrice di accesso:

una matrice di domini/oggetti l’elemento access(i, j) rappresenta

l’insieme dei diritti che il dominio Di prevede per l’oggetto Oj

Quando viene creato un nuovo oggettosi aggiunge una colonna alla matrice

di accesso il contenuto della nuova colonna è

deciso al momento di creazione dell'oggetto

Burstnet Informatica

Page 53: GESTIONE UTENTI E ACCESSI

53

ACCESS CONTROL Process p in domain D2 editing File2,

process q in D3 editing File3 turn on “spelling corrector” function

Burstnet Informatica

File1 File2 File3 Dictionary

D1 READ

D2 READWRITE

READ READ

D3 READWRITE

READ

Oggetti

Domini

p

Q

Page 54: GESTIONE UTENTI E ACCESSI

54

ACCESS CONTROL Introduce a new domain D4 such that the dictionary can

only be read in that domain and add new access “switch”

Burstnet Informatica

File1 File2 File3 Dictionary D4

D1 READ

D2 READWRITE

READ SWITCH

D3 READWRITE

SWITCH

D4 READ

Oggetti

Domini

P

Q

Page 55: GESTIONE UTENTI E ACCESSI

55

ACCESS CONTROL But now processes p and q cannot access

the files they are editing (File2 and File3) “Switch” not only changes domains but also

copies the access rights from the source domain to the destination domain.

Since there may be multiple processes that switch to the same domain, they are kept logically distinct by creating multiple instances of the domain

This mechanism effectively implements the “principle of least privilege”Burstnet Informatica

Page 56: GESTIONE UTENTI E ACCESSI

56

ACCESS CONTROL

Burstnet Informatica

ACCESS CONTROL

Page 57: GESTIONE UTENTI E ACCESSI

57

ACCESS CONTROL Access control list (ACL)

la tabella viene memorizzata per colonne

ad ogni oggetto viene associata una lista di elementi <dominio, diritti di accesso>

Ottimizzazioni: l’ampiezza della lista può essere ridotta associando i diritti a insiemi di domini o usando diritti standard (o di default)

Esempio: UNIX ha liste di soli 3 elementi: owner, group, others

Burstnet Informatica

Page 58: GESTIONE UTENTI E ACCESSI

58

ACCESS CONTROL

Capability: La tabella viene memorizzata per righe ad ogni dominio viene associata una lista di

elementi <oggetti, diritti su tali oggetti> queste coppie sono dette capability

Chi mantiene le capability? I processi che le presentano quali “credenziali” per

accedere all’oggetto " sono una sorta di “chiave” per l’accesso alla

“serratura” che protegge l’oggetto

Burstnet Informatica

Page 59: GESTIONE UTENTI E ACCESSI

59

ACCESS CONTROL Perché il meccanismo delle capability funzioni

occorre che: i processi non possano “coniare” ad arte

capability false. l’oggetto (reference monitor) possa

riconoscere le capability autentiche. sia possibile negare a un processo il diritto

di copia o cessione della propria capability ad un altro processo

Burstnet Informatica

Page 60: GESTIONE UTENTI E ACCESSI

60

ACCESS CONTROL Possono essere implementate tramite

tecniche di Crittografia: Al processo viene fornita come capability la

tripla: <oggetto, diritti di accesso, codice di controllo>criptata con una chiave conosciuta solo all’oggetto

Il processo può memorizzare la capability ma non può modificarla (è per esso una stringa di bit indecifrabile)

Burstnet Informatica

Page 61: GESTIONE UTENTI E ACCESSI

61

ACCESS CONTROL Quando un processo vuole accedere a una

risorsa presenta la richiesta all’oggetto insieme con la

capability relativa. L’oggetto

decodifica la capability, verifica che il codice di controllo sia corretto e

che la richiesta del processo sia autorizzata dalla capability ricevuta.

Burstnet Informatica

Page 62: GESTIONE UTENTI E ACCESSI

62

ACCESS CONTROL La revoca può essere:

Immediata o ritardata (subito o si può attendere). Selettiva o generale (per alcuni i domini o per

tutti). Parziale o totale (tutti i diritti o solo alcuni). Temporanea o permanente.

Revoca in sistemi basati su ACL è sufficiente aggiornare in modo corrispondente le

strutture dati dei diritti di accesso. Revoca in sistemi basati su capability

l’informazione relativa ai permessi è memorizzata presso i processi. Come si può allora revocare i diritti di accesso?

Burstnet Informatica

Page 63: GESTIONE UTENTI E ACCESSI

63

ACCESS CONTROL Capability a validità temporale limitata:

una capability scade dopo un prefissato periodo di tempo

è così permesso revocare diritti (ma in modo ritardato)

Capability indirette vengono concessi diritti non agli oggetti ma a

elementi di una tabella globale che puntano agli oggetti

è possibile revocare diritti cancellando elementi della tabella intermedia

Burstnet Informatica

Page 64: GESTIONE UTENTI E ACCESSI

64

ACCESS CONTROL Every object (resource) in UNIX is a file with a

treestructured naming scheme Ad ogni file è associato:

un utente proprietario del file (owner) un insieme di utenti (group) Diritti per gli altri utenti

Burstnet Informatica

Page 65: GESTIONE UTENTI E ACCESSI

65

ACCESS CONTROL Ad ogni file sono associati 12 bit di “Permission” di

cui i primi 9 sono

Operazioni: Read: leggere il contenuto di file regolari; leggere

l’elenco dei file contenuti in una directory. Write: modificare il contenuto di file regolari;

aggiungere o rimuovere file da una directory. Nonostante i permessi assegnati ad un file per poterlo cancellare

è necessario avere i permessi in scrittura sulla cartella che lo contiene.

Execute: eseguire il file (se è eseguibile); accedere al contenuto della sottodirectory. Non significa che si possa leggere il contenuto si una directoryBurstnet Informatica

Page 66: GESTIONE UTENTI E ACCESSI

69

ACCESS CONTROL Per aprire un file per nome:

Abbiamo bisogno dei diritti di esecuzione (search) su tutte le directory che fanno parte del path

Attenzione ai nomi relativi: current directory è implicita

Per creare un nuovo file in una directory: Abbiamo bisogno dei diritti di esecuzione e

scrittura sulla directory Per cancellare un file in una directory:

Abbiamo bisogno dei diritti di esecuzione e scrittura sulla Directory

Non abbiamo bisogno di diritti sul fileBurstnet Informatica