Après quelques recherches Google et un coup d'œil sur les questions ici, je ne peux pas sembler trouver ce que je pensais être une réponse de livre de cuisine pour les autorisations SQL Server.autorisations appropriées SQL Server pour les développeurs
Comme je le vois souvent dans les petites boutiques, la plupart des développeurs utilisaient un compte administrateur pour SQL Server pendant le développement. Je veux définir les rôles et les autorisations que je peux assigner aux développeurs afin que nous puissions faire notre travail, mais aussi le faire avec les autorisations minimales requises. Quelqu'un peut-il offrir des conseils sur ce que les autorisations SQL Server à attribuer?
Composants:
- SQL Server 2008
- SQL Server Reporting Services (SSRS) 2008
- SQL Server Integration Services (SSIS) 2008
Plates-formes:
- Production
- Mise en scène/QA
- Développement/Intégration
Nous courons la sécurité « en mode mixte » en raison de certaines applications héritées et les réseaux, mais allons vers Windows Auth. Je ne suis pas sûr si cela affecte vraiment le rôle mis en place.
je prévois de mettre en place un accès pour les développeurs à Prod et Mise en scène/QA blocs de données en lecture seule. Cependant, je veux toujours que les développeurs conservent la possibilité d'exécuter le profilage.
Nous avons besoin de comptes de déploiement avec des niveaux de privilèges plus élevés. Nous essayons actuellement de déterminer exactement quels sont les privilèges dont nous avons besoin pour les déploiements de paquets SSIS. Dans le serveur de développement, les développeurs ont besoin de larges privilèges. Cependant, je ne suis pas sûr que juste les faire tous admins est vraiment le meilleur choix.
Il est difficile de croire que personne n'a publié un exemple de script décent qui met en place ce genre de rôles avec un bon ensemble d'autorisations appropriées pour les développeurs et les exploitants.
Nous pouvons probablement trouver tout cela par les choses de verrouillage, puis en ajoutant des autorisations que l'on découvre la nécessité, mais ce sera trop grand pour tout le monde un PITA.
Quelqu'un peut-il me indiquer, ou de fournir un bon exemple pour les autorisations pour ce genre de rôles sur ces types de plates-formes?
Que font les développeurs? Créer des tables? Index? Procédures stockées? Écrire des scripts pour remplir des tables? Peuvent-ils supprimer des tables ou des sprocs? Peuvent-ils accorder des autorisations? Peuvent-ils ajouter des connexions et des rôles? La grande variation dans les choses que les développeurs peuvent faire peut expliquer pourquoi il n'y a pas de réponse standard ici. – DOK
Tout ce qui précède, sauf les connexions, sur le serveur Dev DB. Vous avez probablement raison, DOK, c'est pourquoi il n'y a pas de réponse standard. Dans beaucoup de petites boutiques, les développeurs sont des administrateurs sur le serveur de développement. Je cherchais un ensemble d'autorisations qui leur accorderait des capacités similaires à celles de l'administrateur dans la plupart des cas, mais leur refuserait les opérations les plus risquées (comme créer des connexions). Donc, je vais mettre en œuvre une première bonne estimation, puis passer par le processus PITA d'ajouter des privilèges que nous heurtons contre les murs dans les mauvais endroits. +1 pour un commentaire qui est probablement la réponse. –
DOK, s'il vous plaît poster votre réponse comme une réponse afin que je puisse aller de l'avant et marquer cette question comme une réponse. Je déteste laisser des questions ouvertes, pour ne pas mentionner les "créer une prime". –