2008-09-23 6 views
4

로그인 처리기를 구현하는 작업이 주어졌습니다. 핸들러가 캡처하는 유일한 세부 정보는 사용자 이름과 비밀번호입니다. 처음에는 서블릿에 게시 된 JSP를 사용하려고했습니다. 서블릿이 db 검색을 수행하고 사용자 자격 증명의 유효성을 검사 한 곳. 로그인에 성공하면 리디렉션되지만 실패하면 jsp로 돌아가서 적절한 오류 메시지가 표시됩니다.j_security_check 및 JAAS

그러나 일부 조사를 수행 할 때 j_security_check와 JAAS를 발견 했으므로 어떤 것을 사용할지 또는 사용할 것인지 잘 모릅니다.

내 작업에서 어떤 이점이 있으며 어떤 것이 가장 적합합니까? ?

답변

1

이 실제로 민감한 사항을 수행하는 경우가 아니면 간단한 방법으로 충분합니다. 가장 중요한 (단순한) 비트를 기억하십시오. 실제 암호가 아닌 데이터베이스에 암호 해시를 유지하십시오.

2

컨테이너에서 제공하는 것을 사용하고 데이터베이스 조회를 구현하지 마십시오. 컨테이너가 로그인 한 사람을 알고있는 경우 역할을 사용하여 특정 페이지에 대한 액세스를 제한 할 수 있습니다. 또한 different types of authentication.

JAAS를 사용하면 다른 방법으로 비밀번호를 확인할 수 있습니다 (예 : 활성 디렉토리). 또한 싱글 사인온 (single-sign-on)은 이와 함께 구현 될 수 있습니다.

1

JAAS는 사용자의 부담을 덜어 주며 (또는 클라이언트) 다른 모듈을 삭제하면 인증 방법을 변경할 수 있습니다. 예를 들어 DB auth에서 LDAP to Kerberos to NT Domain에 이르기까지 요점을 알 수 있습니다.

7

보안은 다음과 같은 측면으로 구성된다

  1. 인증
  2. 인증
  3. 전송 계층 보안 - 암호화 인증

: -이 사용자의 자격 증명을 확인하는 구성; 대부분의 경우 이것은 로그인 메커니즘을 통해 구현됩니다. 로그인 페이지를 만드는 작업은 인증의 일부입니다.

인증 : - 응용 프로그램 자원이 사용자가 보호 자원에 대한 요청을했을 때 응용 프로그램이 사용자에게 적절한 액세스 권한이 있는지 확인해야하는 권한없는 액세스로부터 보호해야합니다. 이는 일반적으로 사용자에게 역할을 할당하고 사용자의 액세스 권한을 확인하는 요청 필터를 배치하여 수행됩니다. 이 부분은 더욱 중요하며 자세한 설계 분석이 필요합니다. 사용자 인증만으로는 충분하지 않습니다. 동일한 권한이없는 사용자가 보호 된 리소스에 액세스하지 못하도록해야합니다.

전송 계층 보안 : 시스템 아키텍처는 네트워크를 통해 전송되는 데이터가 해커 나 스니퍼의 손에 들어 가지 않도록해야합니다. SSL/TSL은이를 달성하는 데 사용됩니다.

Spring 보안과 같은 J2EE 컨테이너 및 프레임 워크는 각 보안 측면에 공통 기능을 제공합니다.

간단한 인증 메커니즘을 개발하려고합니다.애플리케이션 보안은 액세스 제어 즉 권한 부여와 관련하여 더욱 중요합니다. 사업 (SSO), LDAP 인증에 단일 로그인 같은 것들에 적응 할 수 있어야 통합 시스템 및 보안 시스템에 대한 변경을 필요로 예를 확장 할 수

또한

보안의 필요성 등

비록 JAAS 및 컨테이너 보안이다 크기 조정에 충분하지만 동일한 제한이 거의 없습니다. 예를 들어, 공급 업체별 구성 및 어댑터에 의존해야합니다. 응용 프로그램은 배포 설명자에 보안 요구를 선언하고 서버 관리자는 서버 끝에 보안 영역을 구성해야합니다.

스프링 보안 (이전의 Acegi Security) 프레임 워크를 평가하는 것이 좋습니다. 우리는 많은 프로젝트에서 동일한 것을 사용하여 강력하고 사용자 정의 가능하며 구현하기 쉽다는 것을 알았습니다. 그것은 귀하의 요청을 가로 채고 액세스 제어를 제공하는 일련의 필터와 함께 제공됩니다. 프레임 워크는 데이터베이스, LADP 서버, OS 보안 등과 같은 다양한 사용자 저장소에 대해 사용자를 확인하는 데 사용할 수 있습니다. 확장 가능하며 SSO 서버와 통합 될 수 있습니다. 또한 JSP 페이지 내의 파트에 대한 액세스를 제어하는 ​​데 유용한 태그 라이브러리를 제공합니다. 이 프레임 워크는 Spring AOP 프레임 워크를 통해 클래스 레벨에서 부과 될 수있는 메소드 레벨 보안을 제공 할뿐만 아니라

관련 문제