Je suis un peu confus de connexion Windows Windows Server SQL Server et les informations d'identification. Sur les livres en ligne, il est indiqué que les informations d'identification peuvent accéder aux ressources au-delà du serveur SQL, mais pour autant que je sache, Windows Login peut le faire, car il est mappé sur un utilisateur Windows. Est-ce que je manque quelque chose d'autre?
Merci d'avance.
Un identifiant est un enregistrement contenant les informations d'authentification nécessaires pour se connecter à une ressource en dehors de SQL Server. La plupart des informations d'identification consistent en un nom de connexion Windows et un mot de passe. Sous Microsoft Windows Server 2003 et versions ultérieures, le mot de passe peut ne pas être requis.
Une information d'identification unique peut être mappée à plusieurs connexions SQL Server. Toutefois, une connexion SQL Server ne peut être mappée que sur un seul identifiant.
Seuls les utilisateurs disposant de l'autorisation ALTER ANY CREDENTIAL peuvent créer ou modifier des informations d'identification.
Login: Un login est tout principal à qui est accordé l'accès à une instance SQL Server. L'accès peut être accordé aux utilisateurs de domaine, groupe de domaine ou comptes authentifiés SQL Server.
Informations d'identification: Les informations d'identification permettent de stocker les informations de connexion d'un compte de domaine dans SQL Server. Les informations d'identification peuvent ensuite être utilisées pour transmettre ces informations d'authentification à une autre connexion ou à un proxy afin de lui accorder des autorisations sur des ressources externes à SQL Server.
..... utilisation de Login si vous devez vous connecter et accéder à une instance SQL Server, vous utiliserez simplement un login. Quels que soient vos besoins, si vous devez entrer et travailler, vous devez vous connecter par la route à suivre. Les deux autres ne vous aideront pas du tout.
Utilisation des informations d'identification .. Les informations d'identification sont introduites lorsque des autorisations d'utilisateurs de domaine doivent être accordées à des comptes ou à des services qui ne disposent généralement pas de ces autorisations. Par exemple, si un assembly requiert EXTERNAL_ACCESS, ces autorisations peuvent être accordées via l'utilisation d'un identifiant. Les informations d'identification peuvent également être utilisées pour accorder aux comptes d'authentification SQL l'accès à des ressources externes.
Dans les versions précédentes de SQL Server, s'il était nécessaire d'accéder à quelque chose en dehors de SQL Server, le compte de service sous lequel le service SQL Server était en cours d'exécution correspondait aux informations d'identification utilisées. En spécifiant un identifiant, vous pouvez dire que si l'utilisateur X exécute une procédure stockée ou une requête sur la ressource d'accès Y, utilisez l'identifiant Z comme compte pour y accéder.
@Remus Rusanu Vous confondez l'idée d'une connexion SQL Server, créée à l'aide de CREATE LOGIN, avec un concept différent appelé identifiant, créé avec CREATE CREDENTIAL. Voir http://www.replicationanswers.com/Security2005.asp pour plus de détails.
Les informations d'identification sont nécessaires pour couvrir le cas où la connexion est réellement pas un utilisateur Windows. Le cas typique est une connexion SQL (utilisateur authentifié avec une authentification SQL au lieu d'une authentification intégrée).
Une information d'identification peut également être utilisée pour permettre à SQL Server d'accéder à un compte Windows Azure Blob Storage. Dans ce cas, au lieu de stocker un nom de connexion Windows et un mot de passe, les informations d'identification stockent le nom du compte de stockage Azure ainsi que la clé d'accès au compte de stockage.
Plus de détails ici: https://msdn.Microsoft.com/en-us/library/jj720554(v=sql.120).aspx
Ou ici: https://msdn.Microsoft.com/en-us/library/dn466435(v=sql.120).aspx
Cela s'avère pratique si vous souhaitez sauvegarder ou restaurer une base de données à partir d'un conteneur de blob Azure.