2014-09-11 5 views
0

특정 .NET 신뢰 수준 (이 어셈블리는 SharePoint의 일부 웹 응용 프로그램에서 실행될 예정) 용으로 내 어셈블리에 대한 완전 신뢰를 설정하려고합니다. 나는 이것이 CasPol.exe를 사용하여 가능하다는 것을 알고 있지만 API 만 사용하고 다른 실행 파일은 사용하지 않기를 바라고 있습니다.어셈블리에 완전 신뢰를 추가하는 방법은 무엇입니까?

자세한 내용 : IIS → 사이트에서

  • , 나는 "내 사이트"가. "내 사이트"→ ASP.NET → .NET 신뢰 수준 → 선택한 신뢰 수준이 "WSS_Minimal"(및 설정 파일의 경로)

나는이 같은 XML 설정 파일을 편집하는 경우이다에서

  • :

    <CodeGroup class="UnionCodeGroup" version="1" PermissionSetName="FullTrust"> 
        IMembershipCondition class="UrlMembershipCondition" version="1" 
        Url="C:\PathToMyAssembly\MyAssembly.dll" /> 
    </CodeGroup> 
    

    그리고 응용 프로그램 풀을 재활용, 내가 볼 수있는 "WSS_Minimal"신뢰 수준을 사용하는 웹 응용 프로그램에서 내 DLL로드, 내 어셈블리가 완전 신뢰를 얻을 때.

    C# API 만 사용하여이 방법을 반복 할 수 있습니까? 특정 미리 정의 된 신뢰 수준에 내 어셈블리에 완전 신뢰를 부여

    1. -

      3 개의 주요 항목이 있습니다.

    2. "나는 이미 그랬습니까?"여부를 확인합니다. 이미 부여되었는지 여부를 확인합니다.
    3. 이 제거 (예를, 내 제품 제거시)
    4. 그것은이 API를 사용하는 것 같아

    그러나, 올바른 장소 나 정책을 열거 할 때, 나는 내가 찾고있는 XML로 없었어 -

    var levelEnumerator = SecurityManager.PolicyHierarchy(); 
    while (levelEnumerator.MoveNext()) 
    { 
    } 
    
  • 답변

    0
    +0

    감사합니다! SharePoint 2010 이상에서는 이것이 필요하다는 언급은하지 않았으므로 _FullTrustAssembliesSection_는 부적절합니다. 그러나 _SPWebConfigModification_은 나를위한 해답입니다. 감사!! – Elad

    0

    나는 caspol.exe를 사용하는 것이 좋습니다. 이 도구가 제공하는 모든 기능이 .NET Framework에서 제공되는 것은 아니므로 C# 코드 또는 PowerShell을 통해 자동 화하려는 경우 caspol.exe를 호출하는 것이 가장 좋습니다.

    개발중인 사용자 지정 DLL 인 경우 BAT 파일 또는 PowerShell 파일을 만들어 파일을 원하는 위치에 복사하고 caspol.exe를 실행하여 어셈블리에 대한 완전한 신뢰를 부여하십시오. 또한 CasPol을 -resolveperm 플래그와 함께 호출하고 출력을 구문 분석하여 어셈블리에 이미 올바른 보안이 있는지 여부를 확인하여에 체크를 추가 할 수 있습니다. 이 스크립트는 Visual Studio에서 Post Build 명령으로 호출하여 프로세스를 더욱 자동화 할 수 있습니다.