Nous avons découvert qu'un compte SQL "sa" était utilisé d'une manière qui n'aurait pas dû l'être, nous changeons donc les mots de passe sa sur toutes nos instances SQL.
(Nous avons des serveurs SQL 2005 à 2017 fonctionnant en mode d'authentification mixte. Tous les utilisateurs et applications devraient utiliser des comptes de domaine ou des comptes SQL non sa pour se connecter. J'ai surveillé, mais je n'ai pas trouvé d'autres applications, utilisateurs ou spids non internes utilisant le compte sa.)
Quelques questions:
Q1: La modification du mot de passe sa nécessite-t-elle un redémarrage SQL?
J'ai trouvé quelques références qui disent qu'un redémarrage du service SQL est requis après avoir changé le mot de passe du compte sa:
Est-ce vrai? Ou seulement si je change de mode d'authentification? Ou seulement si je me connecte régulièrement en tant que sa?
Ce fil central de SQL Server suggère même que le modifier pourrait avoir un impact sur les travaux d'agent SQL existants et d'autres choses; est-ce une préoccupation? Ou seulement si quelqu'un a codé en dur le compte SA dans un package SSIS ou quelque chose?
(Si cela est important, nous utilisons des comptes de domaine pour le service SQL et le service d'agent SQL, et des comptes proxy de domaine pour les travaux qui appellent des packages SSIS ou des scripts PowerShell.)
Q2: Puis-je changer le mot de passe sa de manière "normale"?
Puis-je le réinitialiser comme je le ferais avec n'importe quel autre compte? Utiliser SSMS, ou plus probablement via:
ALTER LOGIN sa WITH PASSWORD = 'newpass';
Ou devrais-je entrer en mode mono-utilisateur ou quelque chose qui nécessiterait un temps d'arrêt planifié? (Notez que je l'exécuterais à partir d'un compte de domaine, pas en étant connecté en tant que "sa".)
Q3: Devrions-nous essayer de faire cette rotation de mot de passe régulièrement? Ou seulement lorsque nous trouvons un problème?
Est-ce une "meilleure pratique" recommandée?
Q1: La modification du mot de passe sa nécessite-t-elle un redémarrage SQL?
Non, mais changer le mode d'authentification le fait. Étant donné que vous modifiez simplement le mot de passe et que le mode d'authentification est déjà défini sur mixte, vous pouvez simplement changer de mot de passe.
Q2: Puis-je changer le mot de passe sa de manière "normale"?
Oui, c'est juste un autre compte de connexion SQL.
Q3: Devrions-nous essayer de faire cette rotation de mot de passe régulièrement? Ou seulement lorsque nous trouvons un problème?
Pour être tout à fait honnête, je voudrais désactiver et renommer la connexion SA. De cette façon, elle ne sera pas utilisée du tout et si vous avez besoin d'une connexion hautement privilégiée, vous pouvez en créer une au besoin). .
Il s'agit de fermer la porte de la grange après que les chevaux se soient déjà enfuis.
Vous devez avoir renommé et désactivé le compte sa lorsque vous avez créé l'instance.
Chaque fois que vous avez un compte bien connu, comme administrateur sur un système Windows ou sa pour SQL Server, vous devez prendre certaines mesures pour le sécuriser. Examinons spécifiquement ce que vous devez faire avec sa:
Définissez un mot de passe difficile à deviner.
Renommer sa.
Désactiver sa.
Assurez-vous qu'aucun autre compte n'existe nommé sa.
Si vous conservez le compte "sa" comme un moyen d'urgence d'obtenir un accès SQL, il existe des moyens plus sûrs: Se connecter à SQL Server lorsque les administrateurs système sont verrouillés Si vous n'avez pas accès au compte réseau, vous avez de plus gros problèmes alors ne pas pouvoir vous connecter à SQL.