Utilisateurs et rôles
CREATE ROLE et CREATE USER, rôle de connexion et rôle de groupe, attributs LOGIN, SUPERUSER et CREATEDB, appartenance et héritage, propriétaire d'un objet et principe du moindre privilège.
- 25 cartes
- 5 thèmes
- Gratuit
Le programme, thème par thème
Le poids de chaque thème suit celui que lui donne l'examen.
- Notions
- Questions
- Ranger et relier
- Mises en situation
- Comprendre
Quelques cartes du deck
Rôle : de quoi s'agit-il ?
Voir la réponse
Entité du serveur de base de données qui détient des droits et peut posséder des objets ; elle représente une personne, un programme ou un groupe.
PostgreSQL n'a plus qu'une seule notion :
CREATE USERetCREATE GROUPne sont que des écritures deCREATE ROLE.Avec ces instructions, et sachant que le groupe lecture a le droit SELECT sur client, que peut faire alice ?
```sql
CREATE ROLE lecture;
CREATE ROLE compta;
CREATE USER alice;
GRANT lecture TO compta;
GRANT compta TO alice;`- Lire la table client, par compta puis par lecture
- Rien, car un groupe ne peut pas être membre d'un autre groupe
- Rien, car alice n'a pas reçu SELECT elle-même
- Lire et modifier client, car compta est un groupe de comptabilité
Voir la réponse
Lire la table client, par compta puis par lecture
L'appartenance se transmet : alice est membre de compta, compta de lecture, et chaque membre hérite des droits du groupe. Rien dans ces instructions n'accorde l'écriture.
Dans PostgreSQL, CREATE USER équivaut à CREATE ROLE avec l'attribut ….
Voir la réponse
Dans PostgreSQL, CREATE USER équivaut à CREATE ROLE avec l'attribut LOGIN.
Un rôle créé par
CREATE ROLEseul porteNOLOGIN: il ne peut pas se connecter, ce qui convient à un groupe.Utilisateur (CREATE USER) : de quoi s'agit-il ?
Voir la réponse
Rôle qui a le droit d'ouvrir une connexion à la base.
CREATE USER aliceéquivaut àCREATE ROLE alice LOGIN: seul l'attributLOGINdistingue les deux écritures.Une faille du site web a permis à un visiteur de supprimer des tables. Le site se connecte à la base en superutilisateur. Quelle correction limite le mal à l'avenir ?
- Un mot de passe plus long, changé chaque mois, pour le superutilisateur
- Faire du site le propriétaire de toutes les tables et du schéma entier
- Un REVOKE sur chaque table, adressé au superutilisateur du serveur
- Un rôle dédié au site, limité à SELECT, INSERT, UPDATE et DELETE
Voir la réponse
Un rôle dédié au site, limité à SELECT, INSERT, UPDATE et DELETE
La faille reste possible, mais le rôle ne peut plus supprimer de tables. Un mot de passe ne change pas ce que le rôle peut faire, un propriétaire peut supprimer sa table, et aucun REVOKE ne retire quoi que ce soit à un superutilisateur.