IIS can't load Oracle.Web assembly (for ASP.NET membership provider)
- by Konamiman
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:
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.