0

Le compte sa a été récemment verrouillé sur la base de données publique de mon entreprise en raison de nombreuses tentatives de connexion infructueuses d'un utilisateur inconnu. J'ai leur adresse IP dans les journaux mais ça m'a fait peur.SQL Server restreindre l'utilisateur aux procédures stockées sélectionnées uniquement

J'ai changé tous mes mots de passe et suis en train de crypter toutes les données sensibles.

Comment puis-je empêcher un utilisateur SQL Server Authentication de pouvoir exécuter certaines procédures stockées, mais ne rien faire d'autre (ne rien voir ni même pouvoir faire Select * From [SomeTable])?

Mise à jour:

J'ai fini par mettre en place une liste blanche d'adresses IP pour le pare-feu, ce qui crée des mots de passe aléatoires de 90 caractères, et la mise en db_denydatawriterdb_denydatareader et l'octroi Execute des procédures spécifiques stockées pour des utilisateurs spécifiques.

+5

Probablement hors sujet, mais vous savez que c'est généralement considéré comme une *** vraiment *** mauvaise idée de laisser une base de données ouverte à l'Internet public, non? Sécurisé ou non. –

+0

ce n'est pas hors sujet. C'est mortel. Parlez à votre administrateur réseau. simplement dit, à moins que ce soit à l'intérieur de votre réseau sur un VPN ou à l'intérieur de votre réseau, pas de connexion directe à SQL Server. De plus, 'sa' devrait être désactivé sur chaque serveur sql. – jerry

Répondre

0

Il est dangereux d'ouvrir SQL Server sur Internet. Une solution minimalement responsable placerait un VPN ou un serveur Web entre les deux. Cela dit, vous pouvez supprimer un utilisateur de tous les groupes (y compris public) et accorder uniquement des droits sur des procédures stockées spécifiques. Sans db_datareader, un utilisateur ne peut pas select * from SomeTable.

3

Les attaques contre un sa non protégé se produisent tout le temps, fait partie de l'arsenal de chaque botnet et kit d'analyse des logiciels malveillants là-bas.

Les seules restrictions que vous avez à votre disposition sont les autorisations et les subventions. Il n'y a pas de mécanisme pour restreindre ce qui est en cours d'exécution à partir d'un login (il n'y a pas de mécanisme similaire à, disons, comment un tunnel ssh peut être restreint à certaines commandes uniquement). Donc, il se résume vraiment à des autorisations et des mots de passe forts.

Questions connexes