2010-01-05 2 views
1

웹 파트가 있고 dll이 웹 응용 프로그램의 저장소에 배포됩니다. 사용자 지정 cas 정책을 만들고 배포했습니다 (wss_custom). 테스트를 위해서 나는 내가 아는 IPermission (약 10 개)에 대해 Unrestricted 액세스 권한을 부여했습니다. 내가 가진 IPermissions의 대부분은 PermCalc.exe에서 가져온 것입니다.정책 예외 SharePoint

System.Security.Policy.PolicyException

문제 어떻게 허가를 사용자 지정 CAS에 따른다 필요하기로 결정할 수 아니라고한다 : 아직 나는 웹 파트에 의해 생성 된 다음과 같은 오류가 파일.

귀하의 제안에 감사드립니다.

감사

답변

1

내 일반적인 조언 당신이 필요로하는 CAS 권한을 찾을 수 있습니다 :

이와 원인도 실행 = 사실과 다른 것 ((사실 ControlPolicy = 사실을 ControlEvidence =) 당신의 DLL은 SecurityPermission을 지정하면)해야 할 수도 있습니다

캐치 예외 및 출력 Exception.ToString()뿐만 아니라 Exception.Message

그런 다음 당신이를 추가하고 다시 시도, 실패한 첫 번째 권한의 정확한 목록을 얻어야한다.

+0

안녕 당, 답장을 보내 감사에 무슨 볼 수 있습니다. 하지만 dll 예외가 dll로드되고 따라서 예외가 코드에서 잡힐 수없는 경우 발생합니다. 회신을 완전히 이해하지 못했을 수 있습니다. 자세한 정보를 제공하도록 요청하십시오. 현재 웹 파트 dll은 (어셈블리 정보에서) 모든 권한을 요청하지 않으며 사용자 정의 cas 파일을 통해 모든 권한이 부여됩니다. – Faiz

+0

안녕하세요, Taha 권한을 필요로하는 메서드가 있어야만 예외가 발생합니다. 라는. 그래서 CreateChildControls, RenderContent 등의 오버로드 된 메서드는 try catch 출력 오류 및 실제 작업을 수행하는 도우미 메서드 호출 만 포함하고 필요한 추적을 얻을 수 있어야합니다. –

+0

Thanks Perk. 귀하의 첫 번째 의견은 어느 정도 도움이되었습니다. 그러나 우리는 web.config에 Full Trust를 설정하여 정확한 권한을 얻고 cas를 성공적으로 생성 한 후에 web에서 사용자 정의 신뢰 수준에 대한 항목을 만들어야한다고 덧붙이고 싶었습니다. .config – Faiz

0

봅니다 .NET 어셈블리 로더의 로깅을 사용하도록 설정하고 "fuslogvw.exe"도구 (자세한 내용은 http://msdn.microsoft.com/en-us/library/e74a18c4(VS.80).aspx 참조)

+0

안녕하세요, 감사합니다. id는 fuslogvw.exe 도구를 실행했으며 로그의 마지막 문은 Assembly가 기본로드 컨텍스트로로드됩니다. – Faiz