IIS가 Oracle.Web 어셈블리를 로드할 수 없습니다(ASP.NET 멤버십 공급자의 경우).

IIS가 Oracle.Web 어셈블리를 로드할 수 없습니다(ASP.NET 멤버십 공급자의 경우).

ASP.NET 멤버십을 위해 Oracle 데이터베이스를 사용하도록 IIS 웹 사이트를 구성하려고 하는데 작동하지 않습니다. IIS는 Oracle 멤버십 공급자가 포함된 어셈블리를 로드할 수 없는 것 같습니다.

그것이 내가 지금까지 가지고 있는 것입니다:

  • Oracle 10g 데이터베이스가 온라인 상태이고 ASP.NET 멤버십을 위한 모든 테이블이 생성되었습니다.
  • ASP.NET에 대한 지원을 포함하여 웹 서버 역할이 설치된 Windows 2008 R2 Standard.
  • 오라클 11g 릴리스 2 ODAC 11.2.0.1.2설치되었습니다. 설치된 구성 요소는 .NET용 Oracle 데이터 공급자, ASP.NET용 Oracle 공급자, Oracle 인스턴트 클라이언트입니다.
  • IIS의 기본 웹 사이트(테스트용으로 사용 중)에는 다음 web.config파일이 있습니다.
<?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>

(간결함을 위해 "add" 요소의 추가 속성은 생략되었습니다. 또한 연결 문자열은 전체 서버에 대해 정의됩니다.)

  • Oracle.Web.dll 파일은 GAC에 있습니다. 이것이 C:\Windows\Assembly폴더의 관련 부분입니다.

Oracle.Web, 2.112.1.2, 문화 없음, 89b483f429c47342, x86

  • 웹 사이트 응용 프로그램 풀은 .NET 2.0용으로 구성되어 있으며 32비트 응용 프로그램이 활성화되어 있습니다.
  • IIS administration.config파일에서 신뢰할 수 없는 공급자를 허용했습니다(테스트를 위해 나중에 신뢰할 수 있는 공급자 목록에 어셈블리를 명시적으로 추가하겠습니다).

이 모든 설정을 마친 후 IIS 관리자에서 ".NET 사용자" 아이콘을 클릭하면 공급자에게 너무 많은 권한이 있다는 경고가 표시되고 수락하면 다음 메시지가 표시됩니다.

이 작업을 수행하는 동안 오류가 발생했습니다.

세부:

파일 또는 어셈블리 'Oracle.Web, Version=2.112.1.2, Culture=neutral, PublicKeyToken=89b483f429c47342' 또는 해당 종속성 중 하나를 로드할 수 없습니다. 시스템이 지정된 파일을 찾을 수 없습니다.

그렇다면 내가 무엇을 놓치고 있는 걸까요? Oracle 멤버십 공급자를 작동시키려면 어떻게 해야 합니까?

감사합니다!

업데이트:문제는 IIS 자체에 있는 것이 아니라 IIS 관리자에게만 있는 것 같습니다. Visual Studio에서 제공하는 웹 사이트 구성 도구를 사용하면 모든 것이 잘 작동합니다.

관련 정보