我有一个使用EF 4.1 Codefirst的ASP.NET WebForms应用程序。 第一次运行我的应用程序会创建一个新的数据库,表等。 到目前为止,一切都运转正常。
但是在将我的应用程序作为WebRole添加到Azure项目后,当我第一次访问数据库时,我收到了一条错误消息(数据库“master”中的CREATE DATABASE权限被拒绝)。
显然,如果我在VS开发Web服务器内部或Azure模拟器内启动我的应用程序会有所不同。
以下是我认为可能相关的一些其他信息:
我的web.config中的连接字符串如下所示:
<add name="dbContext" connectionString="server=(local)\SQLEXPRESS;database=myDB;Integrated Security=True;MultipleActiveResultSets=True" providerName="System.Data.SqlClient" />
我也尝试使用真实用户而不是“集成安全性”。该用户已分配了所有可能的数据库角色,包括sysadmin,serveradmin等。
如何在我的应用程序中授予必要的权限,以便在Azure模拟器中运行时允许创建数据库?
非常感谢你的帮助!
答案 0 :(得分:0)
Azure模拟器使用“网络服务”帐户的凭据运行。您需要在主数据库上添加“网络服务”帐户的凭据。