La question ici est différente de 1 & 2
Lorsque je tente de me connecter à une base de données SQL Server qui se trouve sur un autre système du réseau, les deux sont dans un groupe de travail, lorsque je tente de me connecter à une instance SQL Server 2008 à l'aide de SQL Server Management Studio avec authentification Windows, je me connecte.
Mais lorsque j'essaie de me connecter à partir de mon application, j'obtiens l'erreur suivante
(La connexion a échoué. La connexion provient d'un domaine non approuvé et ne peut pas être utilisée avec l'authentification Windows.) Native = 18452).
Si SQL Server Management Studio peut se connecter, que faudrait-il pour que mon application se connecte?
sql-server
sql-server-2008
Communauté
la source
la source
Réponses:
Étant donné que vous exécutez dans un groupe de travail, la seule authentification possible est celle utilisant des `` comptes NT en miroir '' , ce qui signifie que le processus essayant de s'authentifier doit s'exécuter sous une identité qui est `` en miroir '' sur l'hôte qui authentifie le processus. Les comptes en miroir sont des comptes locaux distincts avec un nom et un mot de passe identiques sur les deux hôtes effectuant l'authentification.
Il doit donc s'ensuivre que vous exécutez SSMS à partir d'un compte qui est mis en miroir sur l'hôte SQL Server (par exemple
<computername>\Administrator
, qui est mis en miroir par le<sqlhost>\Administrator
et a le même mot de passe). Notez que l'UAC n'a rien à faire ici (c'estrunning as administrator
-à- dire n'aidera pas).Votre application s'exécute probablement sous un autre compte local (appool IIS par défaut peut-être?) Et le compte sous lequel l'application s'exécute n'est pas mis en miroir sur l'hôte SQL Server.
Votre meilleure solution consiste à abandonner le réseau de fortune et à déployer un AD (domaine) approprié. À titre d'intermédiaire, assurez- vous que vous exécutez votre application sous un compte qui est en miroir sur Thew machine hôte SQL Server.
la source
Si vous utilisez Windows 7, vous devrez peut-être "exécuter en tant qu'administrateur". Cela permettra à l'application de réutiliser vos informations d'identification Windows et de les transmettre à SQL Server. Sinon, vous transmettrez les informations d'identification d'invité à SQL Server.
la source