PRB : La rubrique «Dépannage des utilisateurs orphelins» dans la documentation en ligne est incomplète

Traductions disponibles Traductions disponibles
Numéro d'article: 274188 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Sommaire

Symptômes

Lorsque vous restaurez une sauvegarde de base de données vers un autre serveur, vous pouvez rencontrer un problème avec les utilisateurs orphelins. La rubrique Dépannage orphelins utilisateurs dans la documentation en ligne de SQL Server de ne pas présenter les étapes exactes à suivre pour résoudre ce problème.

Cet article explique comment vous permet de résoudre les problèmes d'utilisateurs orphelins.

Statut

Microsoft a confirmé l'existence de ce problème dans les produits Microsoft répertoriés au début de cet article.

Plus d'informations

Bien que la connexion de termes et l'utilisateur sont souvent utilisés indifféremment, ils sont très différents. Une connexion d'accès est utilisée pour l'authentification utilisateur et un compte d'utilisateur de base de données est utilisé pour l'accès de base de données et validation des autorisations. Connexions d'accès sont associées à des utilisateurs par l'identificateur de sécurité (SID). Une connexion d'accès est requise pour l'accès au serveur SQL Server. Le processus de vérifier la validité d'une connexion d'accès particulier est appelé «authentification». Cette connexion d'accès doit être associée à un utilisateur de base de données SQL Server. Le compte d'utilisateur vous permet de contrôler les opérations effectuées dans la base de données. Si aucun compte d'utilisateur n'existe dans une base de données pour une connexion d'accès spécifique, l'utilisateur qui utilise cette connexion d'accès ne peut pas accéder à la base de données même si l'utilisateur peut capable de se connecter au serveur SQL Server. La seule exception à cette situation est lorsque la base de données contient le compte d'utilisateur «invité». Une connexion n'a pas de compte utilisateur associé est mappée à l'utilisateur invité. Inversement, si un utilisateur de base de données existe mais il n'y a aucune connexion d'accès associée, l'utilisateur n'est pas en mesure d'ouvrir une session serveur SQL Server.

Lorsqu'une base de données est restaurée vers un autre serveur, il contient un jeu d'utilisateurs et autorisations mais il n'y a peut-être pas les connexions de correspondantes les connexions d'accès ne sont pas forcément associées aux mêmes utilisateurs. Il s'agit d'une situation comme ayant "utilisateurs orphelins.»

Dépannage des utilisateurs orphelins

Lorsque vous restaurez une sauvegarde de base de données vers un autre serveur, vous pouvez rencontrer un problème avec les utilisateurs orphelins. Le scénario suivant illustre le problème et indique comment le résoudre.
  1. Ajouter une connexion d'accès à la base de données master, puis spécifiez la base de données par défaut que Northwind :
    Use master go sp_addlogin 'test', 'password', 'Northwind'
    						
  2. Accorder l'accès à l'utilisateur que vous venez de créer :
    Use Northwind go sp_grantdbaccess 'test'
    						
  3. Sauvegarde la base de données.
    BACKUP DATABASE Northwind
    TO DISK = 'C:\MSSQL\BACKUP\Northwind.bak'
    						
  4. Restaurer la base de données dans un autre serveur SQL Server :
    RESTORE DATABASE Northwind
    FROM DISK = 'C:\MSSQL\BACKUP\Northwind.bak'
    						
    la base de données restaurée contient un utilisateur nommé «test» sans une connexion d'accès correspondante, qui se traduit par "test" est orphelin.
  5. Maintenant, pour détecter les utilisateurs orphelins, exécutez ce code :
    Use Northwind go sp_change_users_login 'report'
    						
    le résultat répertorie toutes les connexions qui ont une incompatibilité entre les entrées dans la table système sysusers, de la base de données Northwind et la table système sysxlogins dans la base de données master.

Étapes pour résoudre les utilisateurs orphelins

  1. Exécutez la commande suivante pour l'utilisateur orphelin à partir de l'étape précédente :
    Use Northwind
    go
    sp_change_users_login 'update_one', 'test', 'test'
    						
    Ceci reconstruire le serveur connexion "test" avec l' utilisateur «test» de la base de données Northwind. La procédure stockée sp_change_users_login pouvez également effectuer une mise à jour de tous les utilisateurs orphelins avec le paramètre «auto_fix» mais ce n'est pas recommandé, car SQL Server tente de correspondent aux connexions d'accès et les utilisateurs par nom. Pour la plupart des cas cela fonctionne ; toutefois, si la connexion d'accès incorrecte est associée à un utilisateur, un utilisateur peut avoir les autorisations incorrectes.
  2. Après avoir exécuté le code dans l'étape précédente, l'utilisateur peut accéder à la base de données. L'utilisateur peut ensuite modifier le mot de passe avec la procédure stockée sp_password :
    Use master 
    go
    sp_password NULL, 'ok', 'test'
    						
    cette procédure stockée ne peut pas être utilisée pour les comptes de sécurité de Microsoft Windows NT. Les utilisateurs se connectant à un serveur SQL Server par l'intermédiaire de leur compte réseau Windows NT sont authentifiés par Windows NT ; par conséquent, leurs mots de passe peuvent uniquement être modifiés dans Windows NT.

    Seuls les membres du rôle sysadmin peuvent modifier le mot de passe de connexion d'un autre utilisateur.

Références

Pour plus d'informations sur la façon de résoudre les problèmes d'autorisation lorsqu'une base de données est déplacée entre les serveurs, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
240872INF: Comment résoudre autorisation problèmes lors d'une base de données est déplacé entre les serveurs SQL

Propriétés

Numéro d'article: 274188 - Dernière mise à jour: jeudi 30 octobre 2003 - Version: 3.2
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft SQL Server 7.0 Standard
  • Microsoft SQL Server 2000 Standard
Mots-clés : 
kbmt kbcodesnippet kbpending kbprb KB274188 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 274188
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com