IIS can't load Oracle.Web assembly (for ASP.NET membership provider)

Posted by Konamiman on Server Fault See other posts from Server Fault or by Konamiman
Published on 2010-12-20T11:00:10Z Indexed on 2010/12/24 8:55 UTC
Read the original article Hit count: 543

Filed under:
|
|

I am trying to configure an IIS web site to use an Oracle database for ASP.NET membership, but I can't get it to work. IIS doesn't seem to be able to load the assembly containing the Oracle membership provider.

That's what I have so far:

  • An Oracle 10g database online and with all the tables for ASP.NET membership created.
  • Windows 2008 R2 Standard with the web server role installed, including support for ASP.NET.
  • Oracle 11g Release 2 ODAC 11.2.0.1.2 installed. The installed components are: Oracle data provider for .NET, Oracle providers for ASP.NET, Oracle instant client.
  • The default web site on IIS (I am using that for testing) has the following web.config file:
<?xml version="1.0" encoding="UTF-8"?>
    <configuration>
        <system.web>
                <membership defaultProvider="OracleMembershipProvider">
                <providers>
                    <remove name="SqlMembershipProvider" />
                    <add name="OracleMembershipProvider" 
type="Oracle.Web.Security.OracleMembershipProvider, Oracle.Web, Version=2.112.1.2, Culture=neutral, PublicKeyToken=89b483f429c47342"
connectionStringName="OracleServer" />
                </providers>
            </membership>
        </system.web>
    </configuration>

(Additional attributes on the "add" element omitted for brevity. Also, the connection string is defined for the whole server.)

  • The Oracle.Web.dll file is on the GAC. That's the relevant part of the C:\Windows\Assembly folder:

Oracle.Web, 2.112.1.2, no culture, 89b483f429c47342, x86

  • The web site application pool is configured for .NET 2.0, and has 32-bit applications enabled.
  • I have allowed untrusted providers in the IIS' administration.config file (just for the sake of testing, I'll explicitly add the assembly to the trusted providers list later).

With all of this setup in place, when I click on the ".NET Users" icon on the IIS manager, I get a warning about the provider having too much privileges, and when I accept I get the following message:

There was an error while performing this operation.

Details:

Could not load file or assembly 'Oracle.Web, Version=2.112.1.2, Culture=neutral, PublicKeyToken=89b483f429c47342' or one of its dependencies. The system cannot find the file specified.

So, what am I missing? How can I get the Oracle membership provider to work?

Thank you!

UPDATE: It seems that the problem is not with IIS itself, but with the IIS administrator only. When using the web site configuration tool provided by Visual Studio, everything works fine.

© Server Fault or respective owner

Related posts about iis

Related posts about ASP.NET