私たちが持っているテスト Web サーバーで、Web メソッドの 1 つでエラーが発生していました。主なエラーは次のとおりです。
"Access to the path 'E:\websites\Discovery\ProfileService\App_Data' is denied"
スタック トレースをさらに下に見ると、もう少し情報が得られます。
"at System.Web.DataAccess.SqlConnectionHelper.CreateMdfFile..."
"at System.Web.DataAccess.SqlConnectionHelper.EnsureSqlExpressDBFile..."
"at System.Web.DataAccess.SqlConnectionHelper.GetConnection..."
"at System.Web.Security.SqlMembershipProvider.GetUser..."
"at System.Web.Security.Membership.GetUser..."
"at System.Web.Security.Membership.GetUser..."
メンバーシップ プロバイダーがメンバーシップ呼び出しの接続文字列を見つけようとしていたようです。このエントリが見つからない場合、新しいローカル メンバーシップ データベースを作成しようとしましたが、アクセス許可エラーでこれを行うことができませんでした。
接続文字列を再確認したところ、暗号化されていても問題ないようでした。次に、接続文字列セクションを復号化して構成を保存しました。呼び出しが機能するようになりました。
他のサービス メソッドが正常に機能していたため、接続文字列が正しいことはわかっています。さらに奇妙なのは、メンバーシップの一部の側面が暗号化されているように見えることです。
暗号化された接続文字列でこれを機能させる方法を知っている人はいますか?