Mettre en place le contrôle d’accès pour les équipes
Dans ce chapitre, vous avez appris à contrôler l’accès à vos bases de données. Nous arrivons maintenant au dernier exercice du cours. Vous allez créer un nouveau schéma et une table pour stocker des données destinées aux data scientists de votre équipe. Même si vos collègues sont responsables, des erreurs peuvent survenir. Vous ne devez leur donner que le niveau de contrôle nécessaire pour accomplir leur travail. Ces personnes auront accès aux données des prêts qui n’ont pas été approuvés.
- Le schéma
analysissera créé. - La table
unapproved_loansera définie dans ce nouveau schéma. - L’utilisateur
data_scientistsera créé. - Cet utilisateur sera limité à la lecture de la nouvelle table.
Cet exercice consolidera les notions de base du contrôle d’accès à une base de données.
Cet exercice fait partie du cours
Créer des bases de données PostgreSQL
Instructions
- Créez un nouveau schéma nommé
analysisqui contiendra notre nouvelle table. - Créez une nouvelle table
unapproved_loandans le schémaanalysisavec unePRIMARY KEY(id), uneFOREIGN KEY(loan_id) référencée à la cléidde la tableloan, et un champTEXTdescriptionindiquant la raison du rejet du prêt. - Ajoutez un utilisateur nommé
data_scientistavec le mot de passechangeme. - Limitez cet utilisateur à un accès en lecture seule à la table
analysis.unapproved_loan.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
-- Create the new analysis schema
CREATE SCHEMA ___;
-- Create a table unapproved loan under the analysis schema
CREATE TABLE ___ (
id serial PRIMARY KEY,
loan_id INTEGER REFERENCES loan(id),
description ___ NOT NULL
);
-- Create 'data_scientist' user with password 'changeme'
___ USER ___ WITH ___ '___';
-- Give 'data_scientist' ability to use 'analysis' schema
GRANT ___ ON ___ ___ TO ___;
-- Grant read-only access to table for 'data_scientist' user
___ SELECT ON ___ TO ___;