ArcGIS Desktop

  • Documentation
  • Support

  • My Profile
  • Aide
  • Sign Out
ArcGIS Desktop

ArcGIS Online

La plateforme cartographique de votre organisation

ArcGIS Desktop

Un SIG professionnel complet

ArcGIS Enterprise

SIG dans votre entreprise

ArcGIS for Developers

Outils de création d'applications de localisation

ArcGIS Solutions

Modèles d'applications et de cartes gratuits pour votre secteur d'activité

ArcGIS Marketplace

Téléchargez des applications et des données pour votre organisation.

  • Documentation
  • Support
Esri
  • Se connecter
user
  • Mon profil
  • Déconnexion

Aide

  • Accueil
  • Commencer
  • Carte
  • Analyser
  • Gérer les données
  • Outils
  • Plus...

Exemple : création d'une vue de base de données dans PostgreSQL à l'aide de SQL

  • Accorder des privilèges sur la table
  • Créer une vue
  • Accorder des privilèges sur la vue
  • Tester les privilèges

Vous pouvez utiliser SQL pour créer une vue sur des tables et des classes d'entités dans une géodatabase d'entreprise.

Les exemples donnés dans cette rubrique illustrent comment créer une vue simple dans PostgreSQL pour restreindre l'accès utilisateur à des colonnes spécifiques. L'exemple est basé sur une table dont la définition est la suivante :

CREATE TABLE employees(emp_id integer not null, name varchar(32),
department smallint not null, hire_date timestamp without time zone not null

Accorder des privilèges sur la table

Si l'utilisateur qui crée la vue n'est pas le propriétaire de la table ou des tables sur lesquelles la vue repose, le propriétaire des tables doit au moins accorder au créateur de la vue les privilèges nécessaires pour réaliser des sélections dans la table.

Dans cet exemple, la table sur laquelle repose la vue (employés) est la propriété de l'utilisateur gdb. L'utilisateur qui crée la vue est l'utilisateur rocket.

psql testdb gdb
Enter password for user gdb:

GRANT SELECT
 ON gdb.employees
 TO rocket;

Créer une vue

Dans cet exemple, l'utilisateur rocket crée une vue sur la table des employés afin de limiter l'accès aux enregistrements où le département a la valeur 201 uniquement :

psql testdb rocket
Enter password for user rocket:

CREATE VIEW view_dept_201
 AS SELECT emp_id, name, hire_date
 FROM gdb.employees 
 WHERE department = 201;

Accorder des privilèges sur la vue

Vous pouvez accorder des privilèges sur la vue à des utilisateurs spécifiques sans avoir à leur accorder l'accès à la table de base (employés). Dans cet exemple, des privilèges SELECT sont accordés à l'utilisateur mgr200 sur la vue view_dept_201 :

GRANT SELECT
 ON rocket.view_dept_201
 TO mgr200;

Tester les privilèges

Connectez-vous en tant qu'utilisateur mgr200 et sélectionnez les enregistrements de la vue view_dept_201 :

psql testdb mgr200
Enter password for mgr200:

SELECT * FROM rocket.view_dept_201; 

emp_id   name        hire_date 
112      LOLLI POP   2007-06-30 08:44:38
134      VAN CHIN    2007-10-15 07:41:20
150      DON GUN     2009-03-01 15:39:05

Comme prévu, seuls les enregistrements correspondant aux employés du département 201 sont renvoyés.

ArcGIS Desktop

  • Accueil
  • Documentation
  • Support

ArcGIS Platform

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

A propos d'Esri

  • A propos de la société
  • Carrières
  • Blog des initiés
  • Conférence des utilisateurs
  • Sommet des développeurs
Esri
Donnez-nous votre avis.
Copyright © 2017 Esri. | Confidentialité | Légal