사용자 지정 서버 컨트롤 보안

Visual Studio 2010

업데이트: 2007년 11월

사용자 지정 서버 컨트롤을 통해 ASP.NET 웹 서버 컨트롤의 기능을 확장할 수 있습니다. 사용자 지정 서버 컨트롤 사용자 및 개발자는 다음과 같은 기본 보안 지침을 고려해야 합니다. 사용자 지정 서버 컨트롤을 만드는 방법에 대한 자세한 내용은 사용자 지정 ASP.NET 서버 컨트롤 개발을 참조하십시오.

Microsoft Visual Studio 2005 등의 IDE에서는 사용자 지정 컨트롤을 사용하는 방법이 개발 과정과 마찬가지로 간소화됩니다. 그러나 아래에 나열된 보안 지침은 사용하는 IDE에 관계없이 적용됩니다.

ASP.NET 웹 응용 프로그램 보안에 대한 일반적인 내용은 ASP.NET 웹 응용 프로그램 보안을 참조하십시오.

웹 응용 프로그램에서는 매우 다양한 방식으로 사용자 지정 서버 컨트롤을 사용할 수 있습니다. 예를 들어 소스 코드 파일을 웹 응용 프로그램의 App_Code 폴더에 직접 배치할 수도 있고, 전역 어셈블리 캐시의 컨트롤을 사용할 수도 있고, Visual Studio 콘텐츠 설치 관리자 등의 자동화된 설치 관리자를 통해 설치된 커뮤니티 구성 요소를 사용할 수도 있습니다. 모든 경우에 IDE 및 구성 요소를 호스팅하는 서버에 의도되지 않은 악영향을 주는 코드나 악성 코드를 가져오지 않도록 주의해야 합니다.

다음은 사용자 지정 서버 컨트롤 사용자가 고려해야 하는 몇 가지 보안 지침입니다. 이 목록에는 일부 내용만 나와 있으며, 이 내용을 시작으로 좀더 보안 강화를 위한 노력을 기울일 수 있습니다.

사용자 지정 컨트롤 개발자는 ASP.NET 응용 프로그램 페이지 및 컨트롤과 .NET Framework의 보안에 대한 다음과 같은 일반적인 지침에 따라야 합니다. 사용자 지정 서버 컨트롤 사용자는 상세한 구현 정보나 보안에 주는 영향을 모르는 경우가 많습니다. 이러한 점을 고려하여 보안 규칙을 세우고 구성 요소가 작동하는 데 필요한 모든 권한을 명시하는 것이 좋습니다. ASP.NET 웹 사이트 보안, .NET Framework 개발자 가이드의 주요 보안 개념Patterns and Practices 웹 사이트의 보안 항목을 참조하여 웹 응용 프로그램의 일반적인 보안 문제 및 해결 방법을 검토할 수 있습니다.

사용자 지정 웹 서버 컨트롤을 디자인 및 구현한 후 구성 요소를 사용자에게 전달할 방법을 결정해야 합니다. 일반적으로 어셈블리나 커뮤니티 구성 요소로 전달할 수 있습니다. 구성 요소를 어셈블리로 전달하는 경우 어셈블리에 서명해야 하며, 이를 강력한 이름 서명이라고도 합니다. 서명을 통해, 다른 소프트웨어에서 어셈블리를 식별하고 명시적으로 참조하는 데 사용할 수 있는 고유 ID가 어셈블리에 부여됩니다. 이 방법에는 어셈블리를 사용한 프로그래밍에 자세히 설명된 다른 장점도 있습니다.

구성 요소를 자동화된 설치 절차를 통해 커뮤니티 구성 요소로 전달하는 경우 구성 요소에 암호화 방식으로 서명해야 합니다. 서명을 통해 해당 개발자에게 고유한 디지털 서명을 만들어 데이터가 해당 개발자로부터 온 것임을 확인할 수 있습니다. Visual Studio 콘텐츠 설치 관리자를 사용하여 서명 가능한 .vsi 파일을 만들면 Visual Studio 2005에서 사용할 커뮤니티 구성 요소를 만들 수 있습니다. 자세한 내용은 다음을 참조하십시오. 방법: Visual Studio 콘텐츠 설치 관리자를 사용하기 위해 커뮤니티 구성 요소 패키징방법: Visual Studio 콘텐츠 설치 관리자를 사용하기 위해 커뮤니티 구성 요소 패키징방법: Visual Studio 콘텐츠 설치 관리자를 사용하기 위해 구성 요소 패키징방법: Visual Studio 콘텐츠 설치 관리자를 사용하기 위해 구성 요소 패키징.

다음은 사용자 지정 서버 컨트롤 구성 요소를 개발할 때 고려해야 하는 몇 가지 보안 지침입니다. 이 목록에는 일부 내용만 나와 있으며, 이 내용을 시작으로 좀더 보안 강화를 위한 노력을 기울일 수 있습니다.

표시: