Quelles sont les commandes SQL appropriées (pas via l'interface graphique) pour ajouter un compte d'utilisateur Windows aux autorisations sur une base de données SQL Server 2008? à-dire .. Je veux donner à quelqu'un l'accès en lecture et une autre personne en lecture/écriture ..Autorisation utilisateur SQL Server 2008 Express
Répondre
C'est un processus en deux étapes:
d'abord, vous devez créer une connexion pour cet utilisateur, en fonction de ses informations d'identification Windows
CREATE LOGIN [<domainName>\<loginName>] FROM WINDOWS
Ceci met en place l'autorisation de base pour se connecter même à votre SQL Server
une fois que vous avez une connexion, vous pouvez créer un utilisateur dans chaque base de données où vous voulez donner que les droits de connexion pour faire quelque chose:
CREATE USER Johnnie FOR LOGIN Domain\Johnnie;
pour accorder des autorisations de lecture sur toutes les tables de votre base de données, attribuez la
db_datareader
rôle à cet utilisateursp_addrolemember @rolename = 'db_datareader', @membername = 'Johnnie'
d'accorder autorisations de lecture et d'écriture sur toutes les tables de votre base de données, attribuez à la fois la
db_datareader
ainsi que le rôledb_datawriter
à cet utilisateurSi vous avez besoin d'un contrôle plus précis sur les tables pouvant être lues ou écrites, vous devez gérer les autorisations manuellement, par ex. en créant vos propres rôles de base de données et en attribuant des autorisations à ces rôles, puis en ajoutant vos utilisateurs aux rôles spécifiques à l'application que vous avez créés
+1. Une réponse très claire. –
@Mitch Wheat: merci, Mitch! –
Assurez-vous également que vous avez activé les connexions TCP/IP dans l'outil Gestionnaire de configuration SQL Server. Ceci est généralement un problème uniquement lorsque vous essayez d'autoriser des connexions à distance à votre ordinateur local. –