2011-12-15 49 views
0

否认DATABASE权限我有一个使用EF 4.1 Codefirst的ASP.NET Web窗体应用程序。 第一次运行我的应用程序创建一个新的数据库,表等。 到目前为止,一切都工作得很好。EF 4.1 CF +天青:在数据库中创建 '主'

但是,增加我的应用程序作为WebRole到Azure项目后,我得到一个错误信息,当我先打数据库(在数据库中创建“主”拒绝DATABASE权限)。

显然它是否有差别,如果我开始我的里面的VS开发Web服务器或Azure的仿真器内部的应用程序。

这是我认为可能是相关的一些附加信息:

  • 当我运行该应用程序
  • Visual Studio 2010中以管理员身份运行该数据库不存在
  • 我的Web角色
  • 信任级别:完全信任
  • SQL Server服务(MS SQL 2008 R2快递)启动和运行

在我的web.config中的连接字符串看起来是这样的:

<add name="dbContext" connectionString="server=(local)\SQLEXPRESS;database=myDB;Integrated Security=True;MultipleActiveResultSets=True" providerName="System.Data.SqlClient" /> 

我还使用一个真正的用户,而不是“综合安全”的尝试。并且该用户已分配了所有可能的数据库角色,包括sysadmin,serveradmin等。

我如何将必要的权限授予我的应用程序,以允许在Azure模拟器内运行时创建数据库?

非常感谢您的帮助!

回答

0

Azure的仿真器“网络服务”帐户的凭据运行。您需要在主数据库上添加“网络服务”帐户的凭证。

+0

超级完美!我将NT AUTHORITY \ NETWORK SERVICE添加为我的SQL Server的新登录名,然后将master数据库分配给此新登录名。现在它起作用了。数据库正在创建。非常感谢Prafulla。它驱使我坚果;-) – Ingmar 2011-12-15 11:03:08