asp.net - Membership and Role Providers when using Oracle Managed Driver -
i had 32bit/64bit issues in 1 of web applications after db upgraded 64 bit 12c , after researching problems had encountered, universal answer "use managed driver , not worry 32/64 bit issue". did.
- downloaded , installed "odac 12c release 4 , oracle developer tools visual studio (12.1.0.2.4)" here,
- removed references oracle.web , oracle.dataaccess (unmanaged drivers) in app , added reference new managed driver "oracle.manageddataaccess"
- changed "using oracle.web", "using oracle.dataaccess.client" "using oracle.manageddataaccess.client"
but cannot find 1 document tells me how web config file needs modified use managed driver.
do need make changes <connectionstrings> section?
do need add additional sections make use of managed driver?
what need change in membership , role providers sections? existing providers refer oracle.web.security.oracleroleprovider , once upgrading managed version, references oracle.web , oracle.dataaccess has removed.
if has gone through pain, please share solutions these, other issues might run once these resolved.
this sample of current web config file think needs changed/removed:
<connectionstrings> <clear/> <add name="msaconnectionstring" connectionstring="user id=some_user;password=somepwd;data source=(description =(address_list =(address = (protocol = tcp)(host = 10.20.30.40)(port = 1521)))(connect_data =(sid = msa))); min pool size=10;max pool size=300;incr pool size=5;decr pool size=2;"/> </connectionstrings> <compilation defaultlanguage="c#" debug="true" targetframework="4.0"> <assemblies>// next 2 line have removed, since dlls no longer referenced <add assembly="oracle.dataaccess, version=2.121.2.0, culture=neutral, publickeytoken=89b483f429c47342"/> <add assembly="oracle.web, version=2.121.2.0, culture=neutral, publickeytoken=89b483f429c47342"/> <add assembly="system.directoryservices, version=4.0.0.0, culture=neutral, publickeytoken=b03f5f7f11d50a3a"/> <add assembly="system.directoryservices.accountmanagement, version=4.0.0.0, culture=neutral, publickeytoken=b77a5c561934e089"/> </assemblies> </compilation> <membership defaultprovider="dssoraclemembershipprovider"> <providers> <add name="dssoraclemembershipprovider" type="oracle.web.security.oraclemembershipprovider, oracle.web, version=2.121.2.0, culture=neutral, publickeytoken=89b483f429c47342" connectionstringname="msaconnectionstring" applicationname="/" enablepasswordretrieval="false" enablepasswordreset="true" requiresquestionandanswer="false" requiresuniqueemail="false" passwordformat="hashed" maxinvalidpasswordattempts="4" minrequiredpasswordlength="9" passwordattemptwindow="8"/> </providers> </membership> <rolemanager enabled="true" defaultprovider="dssoracleroleprovider"> <providers> <add name="dssoracleroleprovider" type="oracle.web.security.oracleroleprovider, oracle.web, version=2.121.2.0, culture=neutral, publickeytoken=89b483f429c47342" connectionstringname="msaconnectionstring" applicationname="/"/> </providers> </rolemanager>
a few thoughts: 1) membership part of oracle.web - still need references - add runtime section in web.config measure:
<assemblybinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentassembly> <assemblyidentity name="oracle.web" publickeytoken="89b483f429c47342" /> <bindingredirect oldversion="0.0.0.0-4.121.2.1" newversion="4.121.2.1" /> </dependentassembly> </assemblybinding>
2) vs2015 nuget can oracle managed client installed; however, simple global substituting oracle.manageddataaccess.client oracle.dataaccess.client. (leave oracle.web alone!)
3) additional tuning ado.net pool may required (in connection strings) - see here: odp.net error in iis: ora-12357 network session end of file
also 2.x drivers asp.net 2.0 - 4.x asp.net 4.0 - looks pointing wrong framework.
Comments
Post a Comment