다음을 통해 공유


장치 보안 고려 사항

업데이트: 2007년 11월

.NET Compact Framework 보안상 중요하게 고려해야 할 사항이 있습니다.

  • .NET Compact Framework는 현재 코드 액세스 보안을 지원하지 않습니다. 다음 코드는 전체 데스크톱 .NET Framework에서 응용 프로그램을 변환할 때 제거해야 합니다.

    • 보안 권한 개체

    • 보안 요청

    • 강력한 이름을 비롯한 모든 증명

    • 코드 그룹

  • .NET Compact Framework 형식은 AllowPartiallyTrustedCallersAttribute 특성을 지원하지 않습니다. 전체 .NET Framework 클래스 라이브러리의 많은 멤버 참조 항목에는 멤버에 직접 실행 호출자에 대한 완전한 신뢰가 있어야 한다는 경고가 포함되어 있습니다. .NET Compact Framework는 AllowPartiallyTrustedCallersAttribute를 지원하지 않으므로 기본적으로 모든 라이브러리에 대해 무제한 액세스가 허용됩니다. 이후 버전의 .NET Compact Framework에는 신뢰 수준이 높은 기능에 대한 액세스를 제한하기 위해 특정 권한 요청 기능이 포함될 것입니다. 그러면 보안 정책에서는 특정 사용 권한을 코드에 적절하게 부여하게 됩니다.

  • 장치는 시스템 소프트웨어에 대한 업데이트를 허용하도록 엔지니어링되며 .NET Compact Framework의 범위를 벗어나는 보안 컨트롤의 영향을 받을 수 있습니다.

  • 신뢰할 수 없는 네이티브 코드를 장치에서 지원하는 경우에는 보안을 완벽하게 유지할 수 없습니다. 형식 안전 코드에 대해서만 보안을 적용할 수 있으며 관리 코드와 비관리 코드의 경계는 관리 코드의 보안에 있어 매우 중요합니다.

  • .NET Compact Framework 버전 1.0에서 런타임에는 네이티브 코드에 대한 플랫폼 호출 액세스에 제한이 없습니다.

장치 제조업체에 따라 플랫폼 간에 차이가 있습니다.

  • OEM(Original Equipment Manufacturer)은 장치의 플랫폼 보안 수준 및 보안 정책을 결정하며 액세스를 부여하기 위한 사용자 지정 권한을 보안 관리자에게 제공할 수도 있습니다.

  • 플랫폼 간에 강력한 이름 증명 정보가 호환되지 않을 수 있으며, 이는 응용 프로그램에 영향을 줄 수 있습니다. 그러나 각 플랫폼에 안전한 바인딩 정책을 사용하면 대부분의 응용 프로그램에서 요청하는 표준 어셈블리의 강력한 이름 증명 정보 필요성을 줄일 수 있습니다.

  • ISV(Independent Software Vendor)에서는 장치의 보안 정책을 변경하지 않고도 자체 코드에 보안 요청을 설정할 수 있습니다.

보안 정책은 장치 종류와 사용 방법에 따라 다릅니다. .NET Compact Framework를 사용하면 강력한 보안 기능을 유지하면서 장치 간 이식이 가능합니다.

참고 항목

개념

.NET Compact Framework의 보안 목표