Visual C# .NET을 사용하여 ASP.NET 응용 프로그램에서 폼 기반 인증을 가진 역할 기반 보안을 구현하는 방법

기술 자료 번역 기술 자료 번역
기술 자료: 311495 - 이 문서가 적용되는 제품 보기.
이 문서는 이전에 다음 ID로 출판되었음: KR311495
모두 확대 | 모두 축소

이 페이지에서

요약

이 문서에서는 Visual C# .NET을 사용하여 폼 기반 인증을 구현한 ASP.NET 응용 프로그램에서 역할 기반 보안을 구현하는 방법을 설명합니다.


요구 사항

이 문서는 ASP.NET 응용 프로그램에서 폼 기반 인증이 이미 구현되었다고 가정합니다.
301240 C# .NET을 사용하여 ASP.NET 응용 프로그램에서 폼 기반 인증을 구현하는 방법

인증 사용자에게 역할 할당

폼 사용자가 Microsoft Windows 사용자가 아닐 수도 있기 때문에 관련된 역할이 기본으로 지정되지 않습니다. 따라서 코드 내에서 역할 기반 보안을 구현할 수 있도록 해당 사용자의 ID에 인증 사용자의 역할을 지정해야 합니다.

이 절의 예제 코드를 사용하여 응용 프로그램에서 역할 기반 보안을 구현할 수 있습니다. 이 예제 코드에서는 사전에 지정된 역할을 인증 사용자에게 할당합니다. 사용자 데이터를 저장하는 방법에 따라 사용자 지정 메서드를 구현하여 해당 인증 사용자의 역할을 검색할 수 있고 아래의 코드 예제처럼 이 역할을 인증 사용자의 ID에 지정할 수 있습니다.

기존 응용 프로그램의 Global.asax 파일에 다음 코드를 복사하여 Application_AuthenticateRequest 이벤트 처리기에 있는 인증 사용자에게 역할을 지정합니다.
public void Application_AuthenticateRequest( Object src , EventArgs e )
{
   if (!(HttpContext.Current.User == null))
   {
      if (HttpContext.Current.User.Identity.AuthenticationType == "Forms" )
      {
      System.Web.Security.FormsIdentity id;
      id = (System.Web.Security.FormsIdentity)HttpContext.Current.User.Identity;
      String[] myRoles = new String[2];
      myRoles[0] = "Manager";
      myRoles[1] = "Admin";
      HttpContext.Current.User = new System.Security.Principal.GenericPrincipal(id,myRoles);
      }
   }
}
				

.ASPX 페이지에서 사용자 역할 확인 및 프로그램 논리 구현

다음 절차는 인증 사용자가 속하는 역할을 기반으로 프로그램 논리를 구현하고 제어하는 방법을 보여줍니다.
  1. Sample.aspx라는 새로운 .aspx 페이지를 만들고 다음 코드를 붙여넣습니다.
     <%@ Page Language="C#" %> <%@ Import Namespace="System.Web" %>    <script runat=server>     public void Page_Load() { 	if (User.IsInRole("Admin")){ 		Response.Write ("You are an Administrator");} 	else { 		Response.Write ("You do not have any role assigned");}     }    </script> 					
  2. 기존 응용 프로그램에 Sample.aspx를 저장합니다 해당 페이지로 이동하여 테스트합니다.

참조

ASP.NET 보안 기능에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
306590 INFO: ASP.NET 보안 개요
ASP.NET Security Overview 역할 기반 보안에 대한 자세한 내용은 다음 .NET Framework SDK(Software Development Kit) 설명서를 참조하십시오.
역할 기반 보안
http://msdn.microsoft.com/library/kor/default.asp?url=/library/KOR/cpguide/html/cpconrole-basedsecurity.asp
다음 IBuySpy 개발자 솔루션 웹 사이트의 문서와 소스 코드에서 역할 기반 보안에 대한 정보를 참조할 수 있습니다.
IBuySpy 개발자 솔루션(영문)
http://www.ibuyspy.com
이 문서에 포함된 다른 공급업체의 연락처 정보는 기술 지원을 받는 데 도움을 주기 위한 것입니다. 이 연락처 정보는 예고 없이 변경될 수 있습니다. Microsoft는 이러한 다른 공급업체 연락처 정보의 정확성을 보증하지 않습니다.





Microsoft 제품 관련 기술 전문가들과 온라인으로 정보를 교환하시려면 Microsoft 뉴스 그룹에 참여하시기 바랍니다.

속성

기술 자료: 311495 - 마지막 검토: 2005년 7월 11일 월요일 - 수정: 3.6
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft ASP.NET 1.0
  • Microsoft Visual C# .NET 2002 Standard Edition
  • Microsoft ASP.NET 1.1
  • Microsoft Visual C# .NET 2003 Standard Edition
키워드:?
kbhowtomaster kbsecurity KB311495

피드백 보내기

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com