Portfolio de Dasek Joiakim - Semestre 4
Semestre 2
Module
Sécurité

Sécurité

La sécurité est un aspect essentiel de la gestion des bases de données, notamment pour les systèmes de gestion de base de données relationnelle tels que Microsoft SQL Server. Ce document examine les mesures de sécurité essentielles dans SQL Server, y compris les méthodes d'authentification, les rôles et les mécanismes de contrôle d'accès.

I. Méthodes d'authentification dans Microsoft SQL Server:

Authentification Windows:

L'authentification Windows permet aux utilisateurs de se connecter à SQL Server en utilisant leurs identifiants Windows. Les utilisateurs peuvent bénéficier de l'intégration avec les stratégies de sécurité de l'entreprise, telles que les contrôles Active Directory. Cette méthode offre une gestion centralisée des utilisateurs et une authentification basée sur des domaines. Authentification SQL Server:

L'authentification SQL Server permet aux utilisateurs de se connecter à SQL Server en utilisant des identifiants spécifiques à SQL Server. Les informations d'identification sont stockées dans la base de données et vérifiées au moment de la connexion. Cette méthode offre une flexibilité accrue, mais nécessite une gestion séparée des utilisateurs et des mots de passe.

II. Gestion des rôles dans Microsoft SQL Server:

Rôles prédéfinis:

SQL Server fournit des rôles prédéfinis tels que sysadmin, db_owner, db_datareader, db_datawriter, etc. Ces rôles permettent de définir rapidement les privilèges et les autorisations pour les utilisateurs courants. Il est recommandé de limiter l'attribution des rôles prédéfinis aux utilisateurs nécessitant des privilèges spécifiques. Rôles personnalisés:

SQL Server permet la création de rôles personnalisés pour répondre aux besoins spécifiques de l'application et de l' organisation. Les rôles personnalisés peuvent être utilisés pour regrouper des autorisations spécifiques et simplifier la gestion des privilèges. Il est important de limiter l'attribution des rôles personnalisés aux utilisateurs nécessitant ces privilèges.

III. Mécanismes de contrôle d'accès dans Microsoft SQL Server:

Permissions:

SQL Server utilise des permissions pour contrôler l'accès aux objets de base de données tels que les tables, les vues, les procédures stockées, etc. Les permissions sont accordées aux rôles ou aux utilisateurs spécifiques et définissent les opérations qu'ils sont autorisés à effectuer. Les principales permissions incluent SELECT, INSERT, UPDATE, DELETE, EXECUTE, etc. Schémas de base de données:

Les schémas de base de données permettent de regrouper les objets de base de données et de définir les autorisations pour ces groupes. En utilisant des schémas, il est possible de limiter l'accès à certains objets en accordant des autorisations uniquement sur des schémas spécifiques. Audit et journalisation:

SQL Server offre des fonctionnalités d'audit et de journalisation pour enregistrer les activités des utilisateurs et les événements système importants. L'audit peut aider à la détection d'activités suspectes, à l'analyse des performances et à la conformité réglementaire.

Exemple

CREATE
LOGIN NomUtilisateur WITH PASSWORD = 'MotDePasseFort'
GO
 
USE NomDeLaBaseDeDonnées
GO
 
CREATE USER NomUtilisateur FOR LOGIN NomUtilisateur
GO
 
ALTER
ROLE NomDuRôle ADD MEMBER NomUtilisateur
GO
 
GRANT SELECT, INSERT, UPDATE, DELETE ON NomDeLaTable TO NomUtilisateur
GO
 

Pour résumer

  • Un Login se connecte à une instance de SQL Server
  • Un User se connecte à une base de données. Un rôle est un ensemble de permissions.
  • Un schéma est un ensemble d'objets de base de données.