CommencerCommencer gratuitement

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 analysis sera créé.
  • La table unapproved_loan sera définie dans ce nouveau schéma.
  • L’utilisateur data_scientist sera 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

Afficher le cours

Instructions

  • Créez un nouveau schéma nommé analysis qui contiendra notre nouvelle table.
  • Créez une nouvelle table unapproved_loan dans le schéma analysis avec une PRIMARY KEY (id), une FOREIGN KEY (loan_id) référencée à la clé id de la table loan, et un champ TEXT description indiquant la raison du rejet du prêt.
  • Ajoutez un utilisateur nommé data_scientist avec le mot de passe changeme.
  • 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 ___;
Modifier et exécuter le code