Vous êtes sur la page 1sur 13

SQL Server 2005

Gestion des utilisateurs et de la sécurité


Information d'identification
Création d'information
d'identification
Le script transact SQL pour créer un credentiel ou une information
d'identification est :
CREATE CREDENTIAL credential_name WITH IDENTITY = 'identity_name' [
, SECRET = 'secret' ]

Exemple :
CREATE CREDENTIAL AlterEgo WITH IDENTITY = 'ADVENTURE-
WORKS\Sylvie', SECRET = 'Pa$$w0rd'
GO
Sécurisation de l'étendue base de données
Création d'utilisateurs base de
données
-- Créer un utilisateur pour une connexion avec le même nom
CREATE USER Bernard
-- Créer un utilisateur avec un nom différent pour la connexion
mappée
CREATE USER Jonas FOR LOGIN [ADVENTUREWORKS\Jonas]
-- Créer un utilisateur avec un schéma par défaut défini
explicitement
CREATE USER SalesUser FOR LOGIN
[DBSERVER1\UtilisateursVentes] WITH DEFAULT_SCHEMA = 'Sales'
Utilisateurs particuliers
L'utilisateur invité
Le compte d'utilisateur invité autorise les connexions sans compte
d'utilisateur pour accéder à une base de données. Les comptes de
connexion assument l'identité de l'utilisateur invité lorsque les
conditions suivantes sont satisfaites :
■ Le compte de connexion peut accéder à SQL Server mais n'a pas accès à
la base de données par l'intermédiaire de son propre compte d'utilisateur.
■ Le compte invité a été activé.

Le compte invité peut être activé à l'aide de l'instruction GRANT pour


octroyer l'autorisation CONNECT à l'utilisateur invité.
USE AdventureWorks
GRANT CONNECT TO guest;
GO
Vous pouvez activer l'utilisateur invité dans n'importe quelle base de données
sauf les bases de données master et tempdb.
Les rôles de base de données
Les rôles fixes de bases de
données
db_accessadmin : Ajouter ou supprimer des utilisateurs, des groupes et des rôles de base de
données.

db_backupoperator : Sauvegarder la base de données.

db_datareader : Lire des données à partir de n'importe quelle table.

db_datawriter : Ajouter, modifier ou supprimer des données à partir de n'importe quelle table.

db_ddladmin : Ajouter, modifier ou supprimer des objets de base de données.

db_denydatareader : Impossible de lire des données à partir de n'importe quelle table.

db_denydatawriter : Impossible de modifier des données dans n'importe quelle table.

db_owner : Effectuer les activités de rôle de base de données.

db_securityadmin : Modifier des rôles de base de données, modifier des rôles d'application,
créer des schémas.

Public : Conserver les autorisations par défaut.


Le rôle public
Le rôle public est un rôle de base de données fixe spécial auquel
appartient chaque utilisateur de base de données et ne peut pas être
supprimé. Le rôle public :
■ Maintient toutes les autorisations par défaut pour les utilisateurs
dans une base de données
■ Impossible d'y affecter des utilisateurs, des groupes ou des rôles
car ceux-ci en sont déjà membres par défaut
■ Est défini dans chaque base de données, notamment master,
msdb, tempdb, model, et toutes les bases de données utilisateur
■ Ne peut pas être supprimé
Création de rôles définis par
l'utilisateur
Lorsque aucun des rôles de base de données fixes ne convient à vos besoins,
vous pouvez créer vos propres rôles de base de données afin de regrouper
plusieurs utilisateurs qui nécessitent les mêmes autorisations dans une base de
données
USE AdventureWorks
CREATE ROLE auditors

Vous pouvez modifier ou supprimer un rôle de base de données défini par


l'utilisateur dans l'Explorateur d'objets ou à l'aide des instructions Transact-SQL
ALTER ROLE et DROP ROLE.
Les rôles d'applications
Rôles d'applications
● Les rôles d'application n'ont pas de membre—ils sont activés pour les
utilisateurs lorsque ceux-ci exécutent l'application.
● Les rôles d'application permettent aux utilisateurs d'utiliser des
autorisations spéciales lorsqu'ils utilisent l'application et d'éviter
l'octroi d'autorisations aux utilisateurs directement.
● Les rôles d'application nécessitent l'activation d'un mot de passe.

Creation d'un rôle :


CREATE APPLICATION ROLE approle01 WITH PASSWORD = '987Gbv876sPYY5m23'

Activation d'un rôle d'application :


EXEC sp_setapprole 'approle01', '987Gbv876sPYY5m23'

Vous aimerez peut-être aussi