J'ai récemment eu some problems que je pense pourrait être aidé en déboguant mon application ASP.NET MVC dans IIS
au lieu du serveur de développement ASP.NET par défaut. Cependant, lorsque j'essaie cela, l'application ne peut pas accéder au serveur de base de données (MS SQL Server 2008 Express) - cela fonctionne bien sur le serveur de développement.Ajouter un utilisateur à SQL Server 2008 - autorisation refusée
L'erreur que je reçois est
Cannot open database 'myDbName' requested by the login. The login failed. Login failed for user 'NT INSTANCE/NETWORK SERVICE'.
Je suppose que cela a fonctionné avant que le serveur de développement accédé à la base de données via mon compte d'utilisateur, et non via le service de réseau comme IIS
.
J'ai essayé d'ajouter l'utilisateur NETWORK SERVICE
à la base de données, mais il s'avère que je n'ai pas les privilèges d'utilisateur pour le faire - ce n'est pas grave que mon compte Windows sur lequel je me connecte au serveur est admin, ou que je cours le programme dans un contexte d'administrateur. Je ne peux simplement pas ajouter un autre utilisateur à la base de données.
Comment résoudre ce problème?
C'est le problème - je ne suis pas autorisé à accorder l'accès à tous les comptes d'utilisateurs. La suggestion de teedyay (modification de l'utilisateur par défaut dans le pool d'applications dans IIS) a résolu le problème. Y at-il des inconvénients évidents avec cette solution de contournement que je devrais être au courant de? –
Non, tant que vous gérez correctement le compte, c'est une bonne solution. Dommage que vous n'avez pas de DBA qui pourrait mettre en place pour vous si vous n'avez pas l'accès! –
La chose est, ceci est mon ordinateur portable privé que j'utilise pour le développement de passe-temps. Je suis le seul à accéder au site, et il n'est accessible que localement - je veux juste que ce soit capable de tester les choses dans un environnement dans lequel il est vraiment supposé pouvoir fonctionner. –