sql server - How to implement ASP.NET identity: CREATE DATABASE permission denied in database 'master' -


first of all, checked here: asp.net identity how set target db?

i'm getting error

create database permission denied in database 'master'.

on line of code:

dim user user = manager.find(trim(username.text), trim(password.text)) 

full error:

[sqlexception (0x80131904): create database permission denied in database 'master'.]
system.data.sqlclient.sqlconnection.onerror(sqlexception exception, boolean breakconnection, action1 wrapcloseinaction) +3249852
system.data.sqlclient.tdsparser.throwexceptionandwarning(tdsparserstateobject stateobj, boolean callerhasconnectionlock, boolean asyncclose) +345
system.data.sqlclient.tdsparser.tryrun(runbehavior runbehavior, sqlcommand cmdhandler, sqldatareader datastream, bulkcopysimpleresultset bulkcopyhandler, tdsparserstateobject stateobj, boolean& dataready) +4927
system.data.sqlclient.sqlcommand.runexecutenonquerytds(string methodname, boolean async, int32 timeout, boolean asyncwrite) +1287
system.data.sqlclient.sqlcommand.internalexecutenonquery(taskcompletionsource
1 completion, string methodname, boolean sendtopipe, int32 timeout, boolean asyncwrite) +367
system.data.sqlclient.sqlcommand.executenonquery() +386
system.data.entity.infrastructure.interception.internaldispatcher1.dispatch(ttarget target, func3 operation, tinterceptioncontext interceptioncontext, action3 executing, action3 executed) +965
system.data.entity.infrastructure.interception.dbcommanddispatcher.nonquery(dbcommand command, dbcommandinterceptioncontext interceptioncontext) +505
system.data.entity.sqlserver.<>c__displayclass1a.b__19(dbconnection conn) +136
system.data.entity.sqlserver.sqlproviderservices.usingconnection(dbconnection sqlconnection, action1 act) +347
system.data.entity.sqlserver.sqlproviderservices.usingmasterconnection(dbconnection sqlconnection, action
1 act) +916
system.data.entity.sqlserver.sqlproviderservices.createdatabasefromscript(nullable1 commandtimeout, dbconnection sqlconnection, string createdatabasescript) +117
system.data.entity.sqlserver.sqlproviderservices.dbcreatedatabase(dbconnection connection, nullable
1 commandtimeout, storeitemcollection storeitemcollection) +212
system.data.entity.migrations.utilities.databasecreator.create(dbconnection connection) +172
system.data.entity.migrations.dbmigrator.ensuredatabaseexists(action mustsucceedtokeepdatabase) +175
system.data.entity.migrations.dbmigrator.update(string targetmigration) +116
system.data.entity.internal.databasecreator.createdatabase(internalcontext internalcontext, func3 createmigrator, objectcontext objectcontext) +121
system.data.entity.database.create(databaseexistencestate existencestate) +169
system.data.entity.createdatabaseifnotexists
1.initializedatabase(tcontext context) +257
system.data.entity.internal.internalcontext.performinitializationaction(action action) +72
system.data.entity.internal.internalcontext.performdatabaseinitialization() +483
system.data.entity.internal.retryaction1.performaction(tinput input) +177
system.data.entity.internal.lazyinternalcontext.initializedatabaseaction(action
1 action) +274
system.data.entity.internal.internalcontext.getentitysetandbasetypefortype(type entitytype) +37
system.data.entity.internal.linq.internalset1.initialize() +76
system.data.entity.internal.linq.internalset
1.get_internalcontext() +21
system.data.entity.infrastructure.dbquery1.system.linq.iqueryable.get_provider() +59
system.data.entity.queryableextensions.firstordefaultasync(iqueryable
1 source, expression1 predicate, cancellationtoken cancellationtoken) +208
system.data.entity.queryableextensions.firstordefaultasync(iqueryable
1 source, expression`1 predicate) +172

microsoft.aspnet.identity.entityframework.d__6c.movenext() +502
system.runtime.compilerservices.taskawaiter.throwfornonsuccess(task task) +13855856
system.runtime.compilerservices.taskawaiter.handlenonsuccessanddebuggernotification(task task) +61
microsoft.aspnet.identity.cultureawaiter1.getresult() +48
microsoft.aspnet.identity.<findasync>d__12.movenext() +357
system.runtime.compilerservices.taskawaiter.throwfornonsuccess(task task) +13855856
system.runtime.compilerservices.taskawaiter.handlenonsuccessanddebuggernotification(task task) +61
microsoft.aspnet.identity.asynchelper.runsync(func
1 func) +348
myapp.login_identity.userlogin_click(object sender, eventargs e) in c:\myapp\login_identity.aspx.vb:168
system.web.ui.webcontrols.button.onclick(eventargs e) +11747645
system.web.ui.webcontrols.button.raisepostbackevent(string eventargument) +150
system.web.ui.page.processrequestmain(boolean includestagesbeforeasyncpoint, boolean includestagesafterasyncpoint) +3360

i changed dbcontext initialization in appmodel.vb existing connection string conn1, points sql server database converted new identity tables.

my connection string:

<add name="conn1"       connectionstring="data source=(local)\sqlexpress;initial catalog=myapp;user id=sa;password=xxxx;"       providername="system.data.sqlclient" /> 

appmodel.vb:

imports microsoft.aspnet.identity imports microsoft.aspnet.identity.entityframework imports system.collections.generic imports system.componentmodel.dataannotations imports system.data.entity imports system.linq imports system.web  namespace aspnetidentitysample.models     public class applicationuser         inherits identityuser         ' hometown stored in same table users         public property hometown() string                             return m_hometown             end             set(value string)                 m_hometown = value             end set         end property         private m_hometown string         public overridable property todoes() icollection(of todo)                             return m_todoes             end             set(value icollection(of todo))                 m_todoes = value             end set         end property         private m_todoes icollection(of todo)           ' firstname & lastname stored in different table called myuserinfo         public overridable property myuserinfo() myuserinfo                             return m_myuserinfo             end             set(value myuserinfo)                 m_myuserinfo = value             end set         end property         private m_myuserinfo myuserinfo      end class      public class myuserinfo         public property id() integer                             return m_id             end             set(value integer)                 m_id = value             end set         end property         private m_id integer         public property firstname() string                             return m_firstname             end             set(value string)                 m_firstname = value             end set         end property         private m_firstname string         public property lastname() string                             return m_lastname             end             set(value string)                 m_lastname = value             end set         end property         private m_lastname string     end class      public class todo         public property id() integer                             return m_id             end             set(value integer)                 m_id = value             end set         end property         private m_id integer         public property description() string                             return m_description             end             set(value string)                 m_description = value             end set         end property         private m_description string         public property isdone() boolean                             return m_isdone             end             set(value boolean)                 m_isdone = value             end set         end property         private m_isdone boolean         public overridable property user() applicationuser                             return m_user             end             set(value applicationuser)                 m_user = value             end set         end property         private m_user applicationuser      end class     public class mydbcontext         inherits identitydbcontext(of applicationuser)         public sub new()             mybase.new("conn1") 'defaultconnection         end sub          protected overrides sub onmodelcreating(modelbuilder dbmodelbuilder)             mybase.onmodelcreating(modelbuilder)              ' change name of table users instead of aspnetusers             modelbuilder.entity(of identityuser)().totable("users")             modelbuilder.entity(of applicationuser)().totable("users")         end sub          public property todoes() dbset(of todo)                             return m_todoes             end             set(value dbset(of todo))                 m_todoes = value             end set         end property         private m_todoes dbset(of todo)          public property myuserinfo() dbset(of myuserinfo)                             return m_myuserinfo             end             set(value dbset(of myuserinfo))                 m_myuserinfo = value             end set         end property         private m_myuserinfo dbset(of myuserinfo)     end class   end namespace 

update

based on comment checked here.

i don't why role issue, since i'm reusing connection string working fine updating other (non-identity related) tables. don't why error refers master table i'd expect i'm not trying connect in way manager.find method.

anyway, user through i'm testing assigned sysadmin role:

enter image description here

update 2

ok, jeremy's comment below i'm step closer...i needed add user iis apppool\.net v4.5 role sysadmin, because user connecting shown in sql server profiler (although i'm unsure security risks when adding user role). anyway, find method no longer throws error , using sql server profiler see sql statement fired when execute code dim user user = manager.findbyname(trim(username.text))

exec sp_executesql n'select top (1)  [extent1].[id] [id],  [extent1].[applicationid] [applicationid],  [extent1].[mobilealias] [mobilealias],  [extent1].[isanonymous] [isanonymous],  [extent1].[lastactivitydate] [lastactivitydate],  [extent1].[mobilepin] [mobilepin],  [extent1].[loweredemail] [loweredemail],  [extent1].[loweredusername] [loweredusername],  [extent1].[passwordquestion] [passwordquestion],  [extent1].[passwordanswer] [passwordanswer],  [extent1].[isapproved] [isapproved],  [extent1].[islockedout] [islockedout],  [extent1].[createdate] [createdate],  [extent1].[lastlogindate] [lastlogindate],  [extent1].[lastpasswordchangeddate] [lastpasswordchangeddate],  [extent1].[lastlockoutdate] [lastlockoutdate],  [extent1].[failedpasswordattemptcount] [failedpasswordattemptcount],  [extent1].[failedpasswordattemptwindowstart] [failedpasswordattemptwindowstart],  [extent1].[failedpasswordanswerattemptcount] [failedpasswordanswerattemptcount],  [extent1].[failedpasswordanswerattemptwindowstart] [failedpasswordanswerattemptwindowstart],  [extent1].[comment] [comment],  [extent1].[email] [email],  [extent1].[emailconfirmed] [emailconfirmed],  [extent1].[passwordhash] [passwordhash],  [extent1].[securitystamp] [securitystamp],  [extent1].[phonenumber] [phonenumber],  [extent1].[phonenumberconfirmed] [phonenumberconfirmed],  [extent1].[twofactorenabled] [twofactorenabled],  [extent1].[lockoutenddateutc] [lockoutenddateutc],  [extent1].[lockoutenabled] [lockoutenabled],  [extent1].[accessfailedcount] [accessfailedcount],  [extent1].[username] [username] [dbo].[aspnetusers] [extent1] ((upper([extent1].[username])) = (upper(@p__linq__0))) or ((upper([extent1].[username]) null) , (upper(@p__linq__0) null))',n'@p__linq__0 nvarchar(4000)',@p__linq__0=n'flo@outlook.com' 

the strange thing is: when execute directly in sql server management studio record returned, in code variable user nothing....what can be?

you connection string contains "user id=sa;password=xxxx", connection attempting use sql server authentication. ssms login property's title bar appears identifying windows account, implies there belief windows authentication should used. , yet connection attempting use sql server authentication (not windows authentication). if not configured, sql server's authentication mode can changed support both sql authentication , windows authentication ("mixed mode" authentication) see https://msdn.microsoft.com/en-us/library/ms188670.aspx.

alternatively, connection string can changed use windows authentication/integrated security, per https://msdn.microsoft.com/en-us/library/jj653752(v=vs.110).aspx#integratedsecurity


Comments

Popular posts from this blog

python - argument must be rect style object - Pygame -

c++ - Qt setGeometry: Unable to set geometry -

php - Zend Framework / Skeleton-Application / Composer install issue -