> Tech > Meilleures pratiques

Meilleures pratiques

Tech - Par iTPro - Publié le 24 juin 2010
email

Dans la plupart des applications concrètes de SQL Server, le DBA (database administrator) crée généralement tous les objets avec DBO comme propriétaire. La propriété de tous les objets par DBO garantit que les chaînes de propriété interbase de données ne sont jamais cassées. De plus, en faisant de sa le

propriétaire de toutes les bases
de données, on garantit que les
chaînes de propriété interbase de données
ne sont elles non plus jamais cassées.

La propriété standardisée simplifie
l’administration et rend automatiques
les chaînes de propriété intactes – il ne
faut accorder de permissions que sur
les objets que les utilisateurs et applications
utilisent directement. Quelques
autres meilleures pratiques viennent
compléter cette stratégie :

• Ajouter les utilisateurs aux rôles de
base de données fixes (db_owner,
db_ddladmin, par exemple) plutôt
que de faire des utilisateurs des
DBO. L’appartenance au rôle de base
de données fixe permet aux utilisateurs
d’effectuer des fonctions administratives
tout en maintenant une
chaîne de propriété intacte avec les autres bases de données.

• N’accorder de permissions objet que
sur les rôles de base de données et
contrôler l’accès aux objets par l’appartenance
au rôle utilisateur. Bien
que cette pratique ne soit pas
directement associée aux chaînes de
propriété, les rôles simplifient la
gestion de la sécurité.

• N’ajouter les utilisateurs aux bases
de données que quand ils ont besoin
d’un accès direct aux objets. Si l’accès
indirect est suffisant, ajouter l’utilisateur
guest à  la base de données. Il
n’est pas nécessaire d’accorder des
permissions objet à  l’utilisateur
guest quand on a une chaîne de propriété
intacte et l’accès indirect aux
objets.

• Eviter SQL dynamique dans des
procédures stockées. Sur les instructions
qui s’exécutent dynamiquement
par l’intermédiaire d’EXECUTE
ou de sp_executesql, SQL Server vérifie
les permissions dans le contexte
de sécurité de l’utilisateur qui a exécuté
la procédure, et non du propriétaire
de la procédure. De ce fait,
les utilisateurs doivent avoir des permissions
sur tous les objets qui sont
référencés directement par des
instructions exécutées dynamiquement.
Par exemple, l’instruction

EXECUTE sp_executesql N'SELECT * FROM MyTable'

demande que l'utilisateur ait une permission
SELECT sur MyTable même
quand ce même utilisateur possède la
procédure et la table.

Une chaîne de propriété intacte,
ou non cassée, est une arme importante
et puissante dans l'arsenal d'un
DBA. Elle favorise une architecture de
sécurité applicative souple et elle optimise
les performances. Avec beaucoup
de prudence dans la planification et les
pratiques, une chaîne de propriété intacte
joue un rôle essentiel dans la sécurité
de SQL Server.

Téléchargez gratuitement cette ressource

Guide de Services Cloud Managés

Guide de Services Cloud Managés

Accélérer votre transformation digitale, protéger et sécuriser vos environnements Cloud avec les offres de support, d'accompagnement et de services managés. Découvrez le TOP 3 des Services Managés pour accompagner la transformation de vos environnements Cloud, gagner en agilité et en sécurité dans un monde d'incertitudes.

Tech - Par iTPro - Publié le 24 juin 2010