Vous êtes sur la page 1sur 20

La confidentialité des

données

Université Virtuelle de Côte d'Ivoire


Table des
matières
Objectifs 3

Introduction 4

I - L'authentification 5

1. Les utilisateurs ................................................................................................................................................ 5

2. Les phases de l'authentification ...................................................................................................................... 6

3. Les mots de passe ............................................................................................................................................ 7

II - Exercice : Activité d'auto-évaluation 9

III - Les droits et privilèges 11

1. Notion de privilège ....................................................................................................................................... 11

2. Règles d'attribution des privilèges ................................................................................................................ 12

3. Les privilèges système .................................................................................................................................. 13

4. Les privilèges objet ....................................................................................................................................... 14

IV - Exercice : Activité d'auto-évaluation 16

Solutions des exercices 18


Objectifs
À la fin de cette leçon, l'apprenant sera capable de :

Appliquer les méthodes d'authentification;


Appliquer les méthodes d’autorisation ;

3
Introduction

La confidentialité a été définie par l'Organisation internationale de normalisation (ISO) comme « le fait de
s'assurer que l'information n'est accessible qu'à ceux dont l'accès est autorisé », et est une des pierres
angulaires de la sécurité de l'information.

Considérées comme le nouvel or noir, la data constitue pour l'entreprise un véritable patrimoine
immatériel source de nouveaux développements.

La méthode de chiffrement qui fait partie des mesures de confidentialité des informations ne sera pas
abordée dans cette partie, mais plutôt dans une autre leçon.

Dans cette leçon, nous verrons uniquement les méthodes de contrôle d'accès pour assurer la confidentialité
des données.

Le contrôle d'accès consiste à définir les accès au réseau et aux services disponibles après identification.
Le terme AAA est souvent utilisé pour désigner les facettes suivantes de la sécurité :

- Authentification (en anglais Authentication) : il s'agit de la vérification de l'identité d'un utilisateur ;

- Autorisation (en anglais Authorization) : il s'agit des droits accordés à un utilisateur, tels que l'accès à
une partie d'un réseau, à des fichiers, le droit d'écriture, etc.

- Comptabilité (en anglais Accounting) : il s'agit des informations récoltées pendant toute la durée de la
session, après identification de l'utilisateur.

4
L'authentification

L'authentification
I

L'authentification est une procédure, par laquelle un système informatique certifie l'identité d'une
personne. Le but de cette procédure étant d'autoriser la personne à accéder à certaines ressources
sécurisées. Il va comparer les informations des utilisateurs autorisés stockées dans une base de
données (en local ou sur un serveur d'authentification) à celles fournies. L'accès sera autorisé
seulement si les informations sont identiques. C'est l'administrateur du système d'information qui
octroie les droits et paramètre d'accès. L'utilisateur possédant un compte d'accès (identifiant + mot
de passe) n'aura accès qu'aux ressources dont il est autorisé à voir.

1. Les utilisateurs
Les types d'utilisateurs

Il faut identifier les utilisateurs ayant besoin d'un accès à la base de données, ils peuvent être de
différents types :

- administrateur
- utilisateur
- application

Administrateur

L'administrateur est une personne physique ayant tous les droits sur le SGBD, mais pas forcément sur
le contenu des bases de données : il peut réaliser des opérations de gestion des droits d'accès et des
ressources systèmes mais on pourra choisir d'exclure ou non les droits d'accès en lecture et/ou écriture
au contenu des bases de données. Bien que parfaitement logique d'un point de vu métier, pour la
protection de données sensibles par exemple, retirer à un administrateur les droits de lecture et
d'écriture sur le contenu d'une base de données n'a pas de sens d'un point de vu technique puisqu'il
possède les capacités techniques de s'octroyer ses droits là. De plus, les opérations de sauvegarde, de
restauration et de maintenance après incident peuvent l'amener à devoir accéder au contenu d'une
base de données.

C'est normalement une personne de confiance, compétente et prudente.

5
Les phases de l'authentification

Utilisateur

L'utilisateur est une personne physique se connectant directement à la base de données en ligne de
commande (commande mysql sous Linux) ou via une interface graphique (script phpMyAdmin sur
un Intranet) ou utilisant une application qui va se connecter à la base de données sous l'identité de
l'utilisateur

Application

Une application peut être une application web, un outil de synchronisation entre sources
d'informations ou tout programme accédant pour lui-même à la base de données. Ce type d'utilisateur
logique n'a rien à voir avec l'utilisateur réel dénotant une personne physique ayant des besoins
particuliers. Même si une application est utilisée par des personnes physiques, on pourra choisir de
déléguer à l'application la gestion des droits d'accès à l'information en fonction des habilitation qu'elle
décide de lui attribuer. Ainsi, une application peut être vue comme un utilisateur de base de données
auquel on attribut des droits qu'elle pourra restreindre de façon transparente pour l'utilisateur final de
l'application.

2. Les phases de l'authentification


Un service d'authentification repose sur deux composantes :

- L'identification dont le rôle est de définir les identités des utilisateurs ;

- L'authentification permettant de vérifier les identités présumée des utilisateurs.


Lorsqu'il existe une seule preuve de l'identité (mot de passe par exemple) on parle
d'authentification simple. Lorsque l'authentification nécessite plusieurs facteurs, on parle alors
d'authentification forte.

Lorsque un utilisateur veut accéder à un système d'information (base de données par exemple) il doit
dans un premier temps effectuer une procédure d'identification et d'authentification.

L'identification

L'identification est une phase qui consiste à établir l'identité de l'utilisateur. Elle permet répondre à la
question : "Qui êtes vous ?". L'utilisateur utilise un identifiant (que l'on nomme "Compte d'accès", "
Nom d'utilisateur" ou "Login" en anglais) qui l'identifie et qui lui est attribué individuellement. Cet
identifiant est unique

L'authentification

L'authentification est une phase qui permet à l'utilisateur d'apporter la preuve de son identité. Elle
intervient après la phase dite d'identification. Elle permet de répondre à la question : "Êtes-vous
réellement cette personne ?".

6
Les mots de passe

Il existe 4 facteurs d'authentifications qui peuvent être utilisés dans le processus d'autorisation d'accès
à des ressources bloquées et sécurisées :

- Ce que l'on connaît (facteur mémoriel) : une information que l'utilisateur a mémorisée et que lui
seul connaît (un mot de passe, passphrase)

- Ce que l'on possède (facteur matériel) : une information que seul l'utilisateur possède et
enregistrée dans un support (carte à puce, clé de stockage, certificat).

- Ce que l'on est (facteur corporel ou biométrique) : une information qui caractérise l'utilisateur
avec une empreinte qui lui est propre (fond de rétine, voix, empreinte digitale)

- Ce que l'on sait faire (facteur réactionnel) : une information ou un geste que seul l'utilisateur
peut produire (exemple : une signature).

l'authentification simple : l'authentification ne repose que sur un seul élément ou « facteur » (exemple
: l'utilisateur indique son mot de passe) ;

l'authentification forte : l'authentification repose sur deux facteurs ou plus5 ;

l'authentification unique : (ou identification unique ; en anglais Single Sign-On ou SSO) est une
méthode permettant à un utilisateur de ne procéder qu'à une seule authentification pour accéder à
plusieurs applications informatiques (ou sites internet sécurisés).

Protocole d'authentification

Grâce aux différents facteurs d'identifications cités ci-dessus, des méthodes de vérifications ont été
mises en place pour qualifier le degré d'authentification. C'est-à-dire que l'on peut combiner un ou
deux facteurs pour renforcer la vérification.

La phase de vérification fait intervenir un protocole d'authentification. On en distingue trois sortes «


familles » :

- l'authentification simple : l'authentification ne repose que sur un seul élément ou « facteur »


(exemple : l'utilisateur indique son mot de passe) ;

- l'authentification forte : l'authentification repose sur deux facteurs ou plus ;

- l'authentification unique : (ou identification unique ; en anglais Single Sign-On ) est une méthode
permettant à un utilisateur de ne procéder qu'à une seule authentification pour accéder à
plusieurs applications informatiques.

3. Les mots de passe


Définition

Un mot de passe est un mot ou une série de caractères utilisés comme moyen d'authentification pour
prouver son identité lorsque l'on désire accéder à un lieu protégé, à une ressource (notamment
informatique) ou à un service dont l'accès est limité et protégé.

7
Les mots de passe

Le mot de passe doit être tenu secret pour éviter qu'un tiers non autorisé puisse accéder à la ressource
ou au service. Il s'agit d'une preuve que l'on possède et que l'on communique au service chargé
d'autoriser l'accès.

Critères de robustesse

Qu'est-ce qu'un mot de passe fort et comment l'écrire ?

En informatique, un mot de passe fort ou robuste sert à se protéger, en particulier en cas d'attaque
dite par force brute.

La robustesse d'un mot de passe dépend de plusieurs critères :

- Sa longueur, qui est le critère le plus important. Il est conseillé d'utiliser des mots de passe d'une
longueur suffisante pour que celui-ci soit protégé des attaques de force brute

- Sa non-simplicité : difficile à deviner.

- Son unicité : la réutilisation du même mot de passe pour des services différents est à proscrire,
afin d'éviter des dégâts en cascade.

- La variation des caractères utilisés : le mot de passe est plus fort lorsqu'il mélange des
majuscules, des minuscules, des chiffres, des signes de ponctuation et des caractères spéciaux.
Notons par ailleurs qu'il est toujours plus sécurisé de chercher à augmenter la longueur d'un
mot de passe que de chercher à utiliser le plus possible des caractères différents.

Consignes pour avoir un mot de passe sécurisé :

La création d'un mot de passe fort répond à plusieurs critères :

- Il doit comporter au moins huit caractères.

- Il ne doit contenir aucun nom d'utilisateur, de famille ou de d'entreprise. Les dates de naissance,
le nom du chien ou toutes autres informations ayant un rapport direct avec la vie privée sont à
proscrire. De même, les slogans et les citations sont facilement attaquables via une attaque par
dictionnaire. Plus généralement, le contenu du mot de passe ne devrait suivre aucune logique,
mais être une simple succession de caractères choisis aléatoirement.

- Ne jamais choisir un mot du langage courant.

- Il faut également qu'il combine des lettres minuscules, majuscules, des chiffres, des caractères
spéciaux (par exemple : ,?;.:/!§%µ) et/ou nationaux comme les lettres accentuées.

- L'introduction délibérée de fautes d'orthographe est également un bon moyen.


- Modifiez systématiquement et au plus tôt les mots de passe par défaut lorsque les systèmes en
contiennent ;
- Renouvelez vos mots de passe avec une fréquence raisonnable. Tous les 90 jours est un bon
compromis pour les systèmes contenant des données sensibles ;
- Ne stockez pas les mots de passe dans un fichier sur un poste informatique particulièrement
exposé au risque (exemple : en ligne sur Internet), encore moins sur un papier facilement
accessible ;

8
Exercice : Activité d'auto-évaluation

Exercice : Activité d'auto-


évaluation II
[solution n°1 p.18]
[*]

Exercice
La confidentialité est :

 un processus au cours duquel un système informatique atteint un état d'intégrité

 le fait de s'assurer que l'information n'est accessible qu'à l'administrateur seul

 le fait de s'assurer qu'une information n'est accessible qu'aux ayant droits

 un ensemble de règles qui garantissent la disponibilité d'une information

Exercice
Les étapes d'un contrôle d'accès selon le protocole AAA  sont :

 Authentique

 Authentification

 Agrément

 Comptabilité

 identification

 Autorisation

Exercice
L'authentification est :

 une procédure par laquelle un processus certifie l’identité d'un système informatique

 un système informatique qui certifie l'identité d'une personne.

 un ensemble de moyens mis en œuvre pour assurer la fiabilité d'une information

 une procédure par laquelle un système informatique certifie l’identité d'une personne.

9
Exercice : Activité d'auto-évaluation

Exercice
Les étapes d'une authentification sont :

 l’authentification

 l'identification

 l'accounting

 l'autorisation

10
Les droits et privilèges

Les droits et privilèges


III

L'administration d'une base de données inclue la gestion des utilisateurs et de leurs privilèges. Il faut
certes authentifier les utilisateurs avant leur accès aux bases de données, mais il est très important de
leur attribuer des droits en fonction de leur rôle et de leur range, sinon on expose les données de la
base à de gros risques.

Pour accéder donc à une information ou effectuer une opération sur la base de données, il faut :

- Authentifier l'utilisateur
- Vérifier que l'utilisateur à droit à cette information ou opération

Pour cela, il faut au préalable créer les utilisateurs et leur attribuer les droits appropriés en fonction
de leurs rôles

1. Notion de privilège
Définition

Les privilèges sont les autorisations (ou droits) accordées à un utilisateur de lancer certaines requêtes ou
d'accéder à certaines tables.

Ces privilèges sont par ailleurs regroupés en plusieurs niveaux :

- global : porte sur toutes les bases de données du système


- base : porte sur une seule base de données
- table : porte sur une table d'une base de données
- colonne : porte sur une colonne d'une table
- routine : porte sur une procédure stockée.

L'administrateur de base de données (DBA) est un utilisateur haut niveau qui a le droit de créer des
utilisateurs et de leur donner des droits d'accès à la base de données et aux objets. Les utilisateurs ont
besoin des privilèges système pour accéder à la base de données et des privilèges objet pour manipuler
le contenu des objets de la base de données. Les utilisateurs peuvent recevoir le privilège permettant
d'accorder des privilèges à d'autres utilisateurs ou à des rôles qui sont des groupes nommés de
privilèges.

11
Règles d'attribution des privilèges

Les schémas: un schéma est une collection d'objets comme des tables, des vues ou des séquences. Le
schéma appartient à un utilisateur.

Les rôles : Un rôle est un groupe nommé de privilèges qui peuvent être assignés à un utilisateur. Cette
méthode facilite la gestion des privilèges.

Un utilisateur peut avoir accès à plusieurs rôles et plusieurs utilisateurs peuvent recevoir le même
rôle. Les rôles sont spécialement créés pour une application de la base de données.

Attention
Attention, donner tous les privilèges systèmes d'une base de données à un utilisateur peut s'avérer très
dangereux ! Plus un utilisateur est en possession d'un grand nombre de privilèges systèmes, plus il
possède de pouvoir et s'il est malintentionné, la sécurité du serveur peut être facilement mis à mal. Il
est donc indispensable de bien choisir les droits que vous allez associer à vos utilisateurs.

2. Règles d'attribution des privilèges


- Règle fondamentale n°1 : attribution du moindre privilège : Les utilisateurs ne doivent avoir que
le minimum de droits, ceux strictement nécessaires à l'accomplissement de leurs tâches. Les
privilèges peuvent évoluer au cours du temps car les besoins et les tâches affectées ne sont pas
immuables, mais à un moment donné, seuls les droits indispensables doivent être fournis à un
utilisateur.

- Règle n°2 : contrôle de la population : Le personnel d'une entreprise bouge, il y a des départs, des
arrivées, des promotions... Les privilèges doivent êtres synchrones avec la réalité de la
population : il faut supprimer les comptes des utilisateurs quittant l'entreprise et de ceux n'étant
plus affectés à telle ou telle tâche.

- Règle n°3 : supervision de la délégation des tâches d'administration : Un administrateur peut être
amené à déléguer auprès d'une autre personne les tâches d'attribution des privilèges de tout ou
partie de la population des utilisateurs. Un contrôle a posteriori doit être réalisé afin de vérifier
que le résultat de cette délégation est conforme à la politique adoptée.

- Règle n°4 : contrôle physique des connexions : La connexion d'un utilisateur à une base de
données peut être réalisée depuis n'importe où dans le monde grâce à Internet. Il est nécessaire
de restreindre les connexions à des hôtes spécifiques connus. Par exemple, le compte d'accès
d'une une application hébergée sur un serveur devrait voir ses privilèges restreints à l'hôte (ou
son domaine) sur lequel elle est hébergée.

- Règle n°5 : limitation des ressources utilisées : Le SGBD offre souvent la possibilité de restreindre
les ressources de calcul disponibles pour un utilisateur. Il est recommandé de configurer ces
limitations de ressources en fonction de la charge maximale attendue pour un utilisateur. Une

12
Les privilèges système

personne physique n'a pas besoin de réaliser 100 requêtes à la secondes, mais au contraire, une
application gérant elle-même les habilitations peut avoir de gros besoins qui peuvent être
cependant limités raisonnablement afin de ne pas compromettre les accès directs en ligne de
commande au serveur de base de données.

- Règle n°6 : journaliser les comportements suspects : Certains SGBD permettent de conserver dans
des journaux de log les requêtes non conformes aux privilèges accordés à un utilisateur. Il peut
être intéressant de les surveiller afin de détecter toute anomalie dénotant des tentatives de
piratage.

- Règle n°7 : restrictions sur une application en fonction du public : Une même application web
peut avoir plusieurs interfaces différentes selon le contexte d'utilisation : internet / intranet. Il
faut donc restreindre un certain nombre de droits afin d'éviter de compromettre le contenu de
la base de données en cas d'attaque.

3. Les privilèges système


Les privilèges spécifiques du DBA

- CREATE USER : Permet de créer d'autres utilisateurs


- DROP USER : Permet de supprimer d'autres utilisateurs
- DROP ANY TABLE : Permet de supprimer une table dans n'importe quel schéma
- BACKUP ANY TABLE : Permet de sauvegarder et de restaurer n'importe quelle table dans
n'importe quel schéma avec l'utilitaire d'export
- SELECT ANY TABLE : Permet d'interroger les tables, les vues ou les vues matérialisées dans
n'importe quel schéma
- CREATE ANY TABLE : Permet de créer des tables dans n'importe quel schéma

L'administrateur de la base de données a la plupart des privilèges permettant, entre autre, de :

-->Créer de nouveaux utilisateurs

-->Supprimer des utilisateurs

-->Supprimer des tables

-->Récupérer les tables

Les privilèges spécifiques des utilisateurs

Une fois que le DBA ait créé un utilisateur, il peut lui accorder des privilèges. Voici les privilèges
système généralement accordés aux développeurs d'applications :

- CREATE SESSION : se connecter à la base de données


- CREATE TABLE : créer des tables dans le schéma de l'utilisateur
- CREATE SEQUENCE : créer des séquences dans le schéma de l'utilisateur
- CREATE VIEW : créer des vues dans le schéma de l'utilisateur

13
Les privilèges objet

- CREATE PROCEDURE : créer des procédures stockées, des fonctions ou des packages dans le
schéma de l'utilisateur

Rappel
L'attribution de privilèges se fait en SQL avec la commande GRANT ( GRANT privilege TO user ),
et la révocation avec REVOKE.

Sous MySQL, seul l'utilisateur root par defaut peut utiliser ces commandes, et donc attribuer le droit
de les utiliser à d'autres utilisateurs.

La plupart du temps, il existe une interface graphique pour administrer les utilisateurs. Sous MySQL,
nous avons par exemple MySQL Workbench ou PHPMyAdmin

Gestion des utilisateurs

- Création des utilisateurs : CREATE USER user IDENTIFIED BY password;

- Changer votre mot de passe : ALTER USER user IDENTIFIED BY password;

4. Les privilèges objet


Définition

Un privilège objet est un privilège ou un droit permettant de réaliser une action particulière sur une
table, une vue, une séquence ou une procédure spécifique. Chaque objet a un jeu particulier de
privilèges pouvant être accordés.

les privilèges pour les différents objets

- ALTER : Modification
- DELETE : Suppression
EXECUTE : Exécution
INDEX : indexation
INSERT : insertion
REFERENCES : référencement
SELECT : section
UPDATE : mise à jour

Assigner des privilèges objet

GRANT object_priv [(columns)]|ALL ON object

TO {user|role|PUBLIC}

[WITH GRANT OPTION];

Dans la syntaxe :

14
Les privilèges objet

- object_priv est un privilège objet

- ALL spécifie que tous les privilèges objet

- columns spécifie que les colonnes de la table ou de la vue auxquelles les privilèges s'appliquent.

- ON object est l'objet sur lequel les privilèges s'appliquent

- TO identifie à qui les privilèges ont assignés

- PUBLIC assigne les privilèges objets à tous les utilisateurs

- WITH GRANT OPTION permet à l'utilisateur de donner les privilèges objets à d'autres
utilisateurs et rôles

Exemple : GRANT select ON employees TO sue, rich;

15
Exercice : Activité d'auto-évaluation

Exercice : Activité d'auto-


évaluation IV
[solution n°2 p.19]
[* ]

Exercice
Pour effectuer une opération, un SGBD doit :

 authentifier l'utilisateur

 comptabiliser l'utilisateur

 rendre intègre l'utilisateur

 fiabiliser l'utilisateur

 Vérifier que l'utilisateur à droit à cette opération

Exercice
Les privilèges sont :

 une faveur que le SGBD accorde à un utilisateur dû à sa bonne conduite

 les autorisations que le système attribue à l'administrateur

 un ensemble d'actions à mener pour favoriser certains utilisateurs

 les autorisations ou droits accordés à un utilisateur d'effectuer certaines actions

Exercice
Les niveaux de privilèges d'un SGBD sont :

 relation (table)

 global

 logiciel

 fichiers

 alter

16
Exercice : Activité d'auto-évaluation

 base

 physique

 colonne

Exercice
Il existe deux types de privilèges qui sont au niveau d'un SGBD :

 les privilèges objet

 les privilèges physique

 les privilèges logiciel

 les privilèges système

 les privilèges réseautiques

 les privilèges ante-diluviens

17
Solutions des exercices

Solutions des exercices


> Solution n°1 Exercice p. 9

Exercice

La confidentialité est :

 un processus au cours duquel un système informatique atteint un état d'intégrité

 le fait de s'assurer que l'information n'est accessible qu'à l'administrateur seul

 le fait de s'assurer qu'une information n'est accessible qu'aux ayant droits

 un ensemble de règles qui garantissent la disponibilité d'une information

Exercice

Les étapes d'un contrôle d'accès selon le protocole AAA  sont :

 Authentique

 Authentification

 Agrément

 Comptabilité

 identification

 Autorisation

Exercice

L'authentification est :

 une procédure par laquelle un processus certifie l’identité d'un système informatique

 un système informatique qui certifie l'identité d'une personne.

 un ensemble de moyens mis en œuvre pour assurer la fiabilité d'une information

 une procédure par laquelle un système informatique certifie l’identité d'une personne.

18
Solutions des exercices

Exercice

Les étapes d'une authentification sont :

 l’authentification

 l'identification

 l'accounting

 l'autorisation

> Solution n°2 Exercice p. 16

Exercice

Pour effectuer une opération, un SGBD doit :

 authentifier l'utilisateur

 comptabiliser l'utilisateur

 rendre intègre l'utilisateur

 fiabiliser l'utilisateur

 Vérifier que l'utilisateur à droit à cette opération

Exercice

Les privilèges sont :

 une faveur que le SGBD accorde à un utilisateur dû à sa bonne conduite

 les autorisations que le système attribue à l'administrateur

 un ensemble d'actions à mener pour favoriser certains utilisateurs

 les autorisations ou droits accordés à un utilisateur d'effectuer certaines actions

Exercice

Les niveaux de privilèges d'un SGBD sont :

 relation (table)

 global

 logiciel

 fichiers

19
Solutions des exercices

 alter

 base

 physique

 colonne

Exercice

Il existe deux types de privilèges qui sont au niveau d'un SGBD :

 les privilèges objet

 les privilèges physique

 les privilèges logiciel

 les privilèges système

 les privilèges réseautiques

 les privilèges ante-diluviens

20

Vous aimerez peut-être aussi