Échec de la connexion de l'utilisateur 'IIS APPPOOL\ASP.NET v4.0'

J'ai un projet web (C# Asp.Net EF 4, MS SQL 2008 et IIS 7) et j'ai besoin de migrer vers IIS 7 localement (pour le moment fonctionne très bien avec de CASSINI).

Localement dans IIS, j'ai mon Default Web Site avec mon déployer. Mes deux déployer et Default Web Site sont sur la piscine ASP.NET v4.0 (regarder l'image pour les paramètres) de la piscine du Framework cible 4 que mon projet web.
Échec de la connexion de l'utilisateur 'IIS APPPOOL\ASP.NET v4.0'
Lors de la visite du site, le navigateur n'affiche pas la page et de permettre au navigateur de télécharger la page au lieu.

J'ai d'autres projets en cours d'exécution sur IIS localement et ils fonctionnent sans problèmes (mais ils ne pas utiliser Entity Framework).

À l'aide de l'Enregistreur d'Événements, je vois des erreurs comme ci-dessous:

Exception information: 
    Exception type: EntityException 
    Exception message: The underlying provider failed on Open.
   at System.Data.EntityClient.EntityConnection.OpenStoreConnectionIf(Boolean openCondition, DbConnection storeConnectionToOpen, DbConnection originalConnection, String exceptionCode, String attemptedOperation, Boolean& closeStoreConnectionOnFailure)


    Login failed for user 'IIS APPPOOL\ASP.NET v4.0'.
       at System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)
       at System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
       at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
       at System.Data.SqlClient.SqlConnection.Open()
       at System.Data.EntityClient.EntityConnection.OpenStoreConnectionIf(Boolean openCondition, DbConnection storeConnectionToOpen, DbConnection originalConnection, String exceptionCode, String attemptedOperation, Boolean& closeStoreConnectionOnFailure)

Une question relative à la

Mise à JOUR:
Vous pouvez le lire dans les ressources sur cette question que les autorisations doivent être accordées sur MS SQL 2008 manuellement comme arift expliquer dans sa réponse.
À l'aide de IIS 7.5 et MS SQL 2008 R2, réglage manuellement à l'autorisation ne devrait pas être nécessaire.

  • avez-vous prévu l'application d'identité du pool d'autorisation sur le site web de dossier?
  • je ne suis pas sûr, pourriez-vous s'il vous plaît dites-moi comment le faire?
  • learn.iis.net/page.aspx/624/application-pool-identities
  • en fait, comme à la dérive dit, ce pourrait être un sql problème de sécurité. Il est préférable de définir un compte d'Utilisateur NT pour le pool d'applications, puis accorder cette autorisation sur le site web du dossier et à la appropriée de tables en SQL
  • merci Christina, j'ai suivi vos ressources et de tous est la valeur de IIS et le dossier semble comme décrit, j'ai toujours le même problème 🙁
  • Je vous encourage à examiner les accepté de répondre ici, et de choisir le plus approprié de réponse. L'on a accepté la réponse est à la tête de nombreuses personnes en sécurité d'un trou noir. Oui, il fonctionne. Non, il n'est vraiment pas une bonne idée. Voir mes commentaires ci-dessous.
  • Merci pour vos commentaires, je dois ajouter que ma question faisait référence à un problème sur ma machine locale pour le développement de problème de sécurité n'était pas vraiment un sujet de préoccupation.
  • IIS Local, pas d'exprimer. été en mesure de corriger en ajoutant que la signalées compte dans l'erreur signalée à sql server. Dans mon cas, c'était: IIS APPPOOL\DefaultAppPool c'est pour le développement local, environnement -- vs 2017
  • GAAAHH! Je la regardais pendant environ 4 heures à essayer de le comprendre, quand j'ai enfin réalisé ma chaîne de connexion a été pointant vers localhost, mais la base de données est sur localhost\SQLEXPRESS !! Une "base de données n'est pas trouvé" message d'erreur serait sympa, Microsoft!

InformationsquelleAutor GibboK | 2011-10-08