J'ai configuré un site Web de prévisualisation trivial pour un client qui a besoin d'une protection de base par mot de passe. J'utilise l'authentification par formulaires avec les informations d'identification spécifiées dans web.config
.Désactiver le fournisseur d'appartenances SQL (authentification par formulaire ASP.Net)
Tout works fine on my box(derniers mots célèbres)
Cependant, quand je déploiement sur un site de production en cours d'exécution Win2008, le code d'authentification tente d'ouvrir une base de données SQL Server (je ne référence à quoi que ce soit SQL dans web.config
). Comment puis-je désactiver ce comportement pour que l'authentification soit basée sur les informations d'identification que j'ai entrées dans web.config
?
Exception dans le journal des événements
Impossible de se connecter à la base de données SQL Server. at System.Web.Management.SqlServices.GetSqlConnection (Serveur de chaîne, Utilisateur de chaîne, Mot de passe de chaîne, Booléen approuvé, Chaîne connectionString) at System.Web.Management.SqlServices.SetupApplicationServices (Serveur de chaîne, Utilisateur de chaîne, Mot de passe de chaîne, Booléen approuvé , String connectionString, String base de données, String dbFileName, fonctions SqlFeatures, installation booléenne) à System.Web.DataAccess.SqlConnectionHelper.CreateMdfFile (String fullFileName, String dataDir, String connectionString) à System.Web.DataAccess.SqlConnectionHelper.EnsureSqlExpressDBFile (String connectionString) ... à System.Data.SqlClient.SqlConnection.Open() à System.Web.Management.SqlServices.GetSqlConnection (String server, String utilisateur, String mot de passe, Boolean approuvé, String connectionString)
http://my.site.com/Login.aspx?ReturnUrl=/
web.config (partie pertinente)
<system.web>
<compilation targetFramework="4.0" />
<authentication mode="Forms">
<forms name="appNameAuth" path="/" loginUrl="Login.aspx" protection="All" timeout="30">
<credentials passwordFormat="SHA1">
<user name="me" password="SHA1OfMyPassword" />
</credentials>
</forms>
</authentication>
<authorization>
<deny users="?"/>
<allow users="me" />
</authorization>
</system.web>
Merci. Cela a répondu à ma question avec l'entrée "enableSimpleMembership" décrite ici: http://stackoverflow.com/questions/12116736/aspnet-role-provider-kicking-in-and-it-shouldnt-be – Josh
La partie manquante de cette solution depuis le lien ci-dessus (12116736) est: dans la section –
Nigel