2009-09-02 4 views
1

GoDaddy에서 공유 호스팅에서 웹 사이트를 실행하고 있습니다. 중간 선택이므로 항상 선택해야합니다. 내 선택이 아닙니다. 응용 프로그램을 높은 신뢰로 실행하려면 몇 가지 고급 기능을 사용하고 싶습니다..NET의 중간 트러스트 환경에서 실행 중인지 어떻게 확인합니까?

그래서 런타임시 응용 프로그램이 .NET의 중간 트러스트 환경에서 실행되고 있는지 확인하는 방법이 있는지 알고 싶습니다.

if (!SecurityManager.IsGranted(new RegistryPermission(PermissionState.Unrestricted))) 
{ 
    //do something.... not at full trust 
} 

if (!SecurityManager.IsGranted(new DnsPermission(PermissionState.Unrestricted))) 
{ 
    //do something.... not at full trust 
} 

나는 다음과 같은 링크에서이있어 : http://www.netomatix.com/development/webcaspermissions.aspx

여기 MSDN에서 보안 관리자 및 레지스트리 권한 클래스에 대한 링크입니다 :

http://msdn.microsoft.com/en-us/library/system.security.securitymanager.isgranted.aspx

답변

1

다음과 같은 코드를 시도 할 수 http://msdn.microsoft.com/en-us/library/system.security.permissions.registrypermission.aspx

System.Security에 대한 참조를 추가하고 System.Security 및 System.Security.Permissions에 대한 몇 가지 using 문을 추가해야합니다.

편집 :

닉의 코멘트 추가 후 : 당신은 asp.net의 보안 수준을 직접 테스트 할 수

: 나는 ASP.NET의 AspNetHostingPermission에 대한 생각

if (SecurityManager.IsGranted(new AspNetHostingPermission(AspNetHostingPermissionLevel.Medium))) 
{Response.Write("Medium Trust level");} 
+2

는 더 낫다 적당한. –

+0

좋은 캐치 닉. 나는 그것을 예제로 추가했다. – klabranche

+0

.net 4.0이 이런 방식으로 설정 권한을 부인했습니다. –

관련 문제