보안 클래스 라이브러리 작성

업데이트: 2007년 11월

클래스 라이브러리는 보호된 리소스와 비관리 코드를 자주 액세스하므로 클래스 라이브러리에 프로그래밍 오류가 있으면 보안상 약점이 드러날 수 있습니다. 클래스 라이브러리를 설계하려면 코드 액세스 보안을 이해하고 클래스 라이브러리의 보안에 주의해야 합니다.

다음 표는 클래스 라이브러리의 보안을 설정할 때 고려해야 할 세 가지 주요한 요인을 나타냅니다.

보안 요소

설명

보안 요구

요구는 코드의 호출자에게 권한을 요구하는 메커니즘으로, 클래스와 메서드 수준에 적용됩니다. 요구는 스택 워크를 호출하는데, 이 스택 워크에서 코드를 직접 또는 간접적으로 호출하는 모든 호출자는 코드가 호출될 때 검사됩니다. 요구는 리소스를 보호하기 위해 대개 클래스 라이브러리에서 사용됩니다.

보안 재정의

재정의는 공용 언어 런타임이 내린 특정 보안 결정을 재정의하는 방법으로, 클래스와 메서드 범위에 적용됩니다. 재정의는 호출자가 코드를 사용할 때 호출됩니다. 재정의는 스택 워크를 중지하거나 특정 권한이 부여된 호출자의 액세스를 제한하기 위해 사용됩니다.

주의:

재정의는 위험할 수 있으므로 신중하게 사용해야 합니다.

보안 최적화

요구와 재정의를 조합해서 사용하면 코드와 보안 시스템의 상호 작용으로 성능을 향상시킬 수 있습니다.

참고 항목

개념

보안 요청

보안 검사 재정의

클래스 및 멤버 범위와 함께 사용되는 선언적 보안

보안 최적화

기타 리소스

코드 액세스 보안