0

사내에서 사용할 인트라넷 mvc 앱을 만들고 있습니다. 이 가게의 다른 녀석은 서버 기술자뿐입니다. 도메인 컨트롤러가 있고 우리는 AD를 사용한다고 들었습니다. 모든 사용자는 그룹입니다. 나는 우리가 워크 스테이션에 로그인해야한다는 것을 기반으로 Windows 인증을 사용한다고 확신한다.어떤 보안을 사용해야합니까?

디렉토리 서비스에서 UserPrincipal을 사용해야하는지, HTTPContext에서 Current.User 항목을 사용해야하는지 잘 모르겠다.

분명히 앱 보안 정보에 대해 잘 모르겠다. "내가 알아 낸 바로는 책을 치려고 계획하고있다. 기술 "을 사용하고 있어야합니다. 또한 특정 그룹에 대해 사용자를 확인해야합니다. 그 사실을 거의 알고 있었지만 사실이라고 판단되면 허위로 나타납니다.

 if (HttpContext.Current.User.IsInRole("MyADGroup")) 
     { 
      IsAdmin = true; //keeps returning false. 
     } 

그래서 무엇을 조사해야합니까?

답변

0

ActiveDirectoryMembershipProvider을 사용하여 광고의 사용자 및 그룹을 사용하도록 내부 응용 프로그램을 연결할 수 있습니다. 그런 다음 공급자 인스턴스 (Membership.ValidateUser)에 대해 인증하면됩니다. 이렇게하면 AD를 백업 저장소로 사용할 수 있지만 응용 프로그램이 명시 적으로 종속되지 않게됩니다. 또한 HttpContext에 UserPrincipal을 채 웁니다.

IIS가 전체 사이트에 대해 Windows 인증을 구성 할 수 있도록 허용하지만 표준 로그인 양식과 함께 사용하는 것이 좋습니다. AD 백업 인증과 함께 표준 로그인 양식을 사용하면 디커플링을 유지하고 익명 액세스를 허용하여 사이트의 일부분을 공용 페이지로 노출 할 수 있습니다. 이는 로그온을 시도하지만 권한에 의해 허용되지 않거나 잘못된 자격 증명을 사용하는 사람에게 유용 할 수있는 응용 프로그램 도움말 및 FAQ와 같은 항목에 유용 할 수 있습니다. 뿐만 아니라 더 나은 사용자 경험을 제공합니다.

1

this example을 사용하면 Active Directory 역할을 쉽게 시작할 수 있습니다.

응용 프로그램이 사내이기 때문에 Windows 인증에서 멀리 벗어나고 싶지는 않지만 LDAP를 살펴 보는 것이 좋습니다. 행운

Connecting to an LDAP Server

좋은!