Mysql
 sql >> Base de données >  >> RDS >> Mysql

SQL SERVER - Astuce - Exécution de SSMS avec un compte Windows différent

Récemment, lors d'une de mes interactions avec un administrateur de bases de données au sein d'une grande organisation financière, j'ai été surpris de voir que l'administrateur se connectait à un poste de travail/serveur en utilisant des informations d'identification différentes. Ce qui m'a déconcerté, c'est qu'il se déconnectait. J'ai immédiatement demandé, pourquoi faites-vous cela? Il a dit, puisqu'il utilisait l'authentification Windows, qui était différente de ses informations d'identification normales que pour les activités liées à la base de données, il utilisait pour créer une session différente. Après quelques recherches, j'ai découvert que c'était une pratique courante dans un certain nombre d'organisations.

De nombreuses entreprises fournissent deux comptes Windows différents à n'importe quel administrateur. Un compte "normal" (exemple SQLAuthority\Pinal) est utilisé pour le travail général comme les e-mails, la connexion à un ordinateur portable, etc. Et un autre compte "admin" (exemple SQLAuthority\adm_pinal) pour les tâches de niveau administratif à effectuer sur le serveur. Le compte normal n'aurait pas accès aux serveurs SQL, contrairement au compte de niveau administrateur. Pour renforcer la sécurité, les entreprises utilisent un compte Windows pour se connecter à SQL Server.

Cela rend la chose peu intéressante. Si l'on doit se connecter à SQL Server à partir de l'ordinateur portable sur lequel le DBA s'est connecté avec un compte régulier, il doit faire un "Clic droit" avec la touche Maj enfoncée, puis utiliser "Exécuter en tant qu'utilisateur différent" pour utiliser le compte administrateur.

Il est important d'appuyer sur la touche Maj, sinon nous ne verrions pas cette option. Après avoir choisi cela, il apparaîtra avec une fenêtre de nom d'utilisateur et de mot de passe. Si vous le remarquez, vous remarquerez le chemin ssms.exe qui est utilisé.

Une autre méthode, que je préfère, consiste à utiliser Exécuter en tant que commande. Le programme runas.exe nous permet de dire à Windows d'exécuter un programme en utilisant l'environnement réseau actuel d'un autre utilisateur au lieu de l'environnement local. Les détails complets et les commutateurs de l'exécution en tant que programme peuvent être trouvés dans l'article TechNet.

Je créerais normalement un raccourci sur le bureau. Faites un clic droit et choisissez un nouveau raccourci comme indiqué ci-dessous

et indiquez l'emplacement/le paramètre comme ci-dessous

C:\Windows\System32\runas.exe /noprofile /env /user :SQLAuthority\adm_Pinal "C:\Program Files (x86)\Microsoft SQL Server\130 \Tools\Binn\ManagementStudio\Ssms.exe"

Vous devez modifier deux choses, le nom d'utilisateur et le chemin d'accès correct pour SSMS.exe

Une fois enregistré, vous pouvez double-cliquer et fournir un mot de passe à l'invite de commande. J'ai donné un nom de raccourci en tant qu'administrateur SSMS dans la capture d'écran ci-dessous. Dès que je double-clique, je vois ci-dessous

Une seule information d'identification est fournie, SSMS s'ouvrira avec ce compte Windows.

Je dois conclure en disant que si vous utilisez l'authentification SQL, vous n'avez pas besoin de le faire car les informations d'identification Windows ne sont pas transmises à SQL Server.