« PostgreSQL/Sécurité » : différence entre les versions

Un livre de Wikilivres.
Contenu supprimé Contenu ajouté
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 2 : Ligne 2 :


== Comptes système ==
== Comptes système ==
Sur Windows, il faut que l'utilisateur se soit connecté au moins une fois avec PgAdmin pour que le mot de passe de la base soit enregistré dans son répertoire personnel : <u>C:\Users\MonUtilisateur\AppData\Roaming\postgresql\pgpass.conf</u>.
* Sur Windows, il faut que l'utilisateur se soit connecté au moins une fois avec PgAdmin pour que le mot de passe de la base soit enregistré dans son répertoire personnel : <u>C:\Users\MonUtilisateur\AppData\Roaming\postgresql\pgpass.conf</u>.

{{attention|Le mot de passe de la base de données apparait en clair dans ''pgpass.conf''.|clear=left}}
{{attention|Le mot de passe de la base de données apparait en clair dans ''pgpass.conf''.|clear=left}}
* Sur Linux, ic'est stocké dans ''~/.pgpass'' par défaut.


== Rôles ==
== Rôles ==

Version du 9 août 2016 à 14:58

Comptes système

  • Sur Windows, il faut que l'utilisateur se soit connecté au moins une fois avec PgAdmin pour que le mot de passe de la base soit enregistré dans son répertoire personnel : C:\Users\MonUtilisateur\AppData\Roaming\postgresql\pgpass.conf.

Logo

Le mot de passe de la base de données apparait en clair dans pgpass.conf.

  • Sur Linux, ic'est stocké dans ~/.pgpass par défaut.

Rôles

PostgreSQL supports the concept of roles [1] to realize security issues. The concept is independent from operating system user accounts.

This concept of roles subsumes the concepts of "users" and "groups". A role can be thought of as either a database user, or a group of database users, depending on how the role is set up. Roles have certain privileges on database objects like tables or functions and can assign those privileges to other roles. Roles are global across a cluster - and not per individual database.

Often users, which shall have identical privileges, are grouped together to a user group and the privileges are granted to the group.

-- the user group
CREATE ROLE group_1 ENCRYPTED PASSWORD 'xyz';
GRANT SELECT ON table_1 TO group_1;
-- the users
CREATE ROLE adam LOGIN ENCRYPTED PASSWORD 'xyz';  -- Default is NOLOGIN
CREATE ROLE anne LOGIN ENCRYPTED PASSWORD 'xyz';
-- the link between user group and users
GRANT group_1 TO adam, anne;

Concerning CREATE ROLE you can assign the privileges SUPERUSER, CREATEDB, CREATEROLE, REPLICATION and LOGIN. Concerning GRANT you can pass on access privileges to database objects like tables - or you define group membership.

Implicitly there is the special role PUBLIC, which can be thought of as a group that always includes all roles. Thus, privileges assigned to PUBLIC are implicitly given to all roles, even when those roles are created at a later stage.

Références

  1. Concept of roles [1]
Demande de traduction

Cette page nécessite une traduction.
Si vous connaissez cette langue et le sujet de la page, vous pouvez poursuivre ou corriger la traduction.