문제

Jaas를 이해하는 데 어려움을 겪고 있습니다. 그것은 모두 (특히 선 튜토리얼)보다 더 복잡해 보입니다. 사용자 지정 사용자 저장소를 사용한 Struts + Spring + Hibernate를 기반으로 Java 응용 프로그램에서 보안 (인증 + 권한 부여)을 구현하는 방법에 대한 간단한 튜토리얼 또는 예제가 필요합니다. acegi를 사용하여 구현할 수 있습니다.

다른 팁

다른 사용자는 위의 매우 유용한 링크를 제공하므로 링크를 귀찮게하지 않을 것입니다. 나는 웹 애플리케이션을 위해 JAA에서 비슷한 연구를 수행했으며 Jaas가 Java World의 웹 애플리케이션에서 다른 "계층"에서 보안을 다루는 프레임 워크라는 것을 알 때까지 "마음의로드 블록"에 부딪쳤다. Java EE가 아닌 Java SE의 보안 문제를 해결하기위한 건축입니다.

JAAS는 웹 응용 프로그램보다 훨씬 낮은 수준에서 물건을 보호하기 위해 구축 된 보안 프레임 워크입니다. 이러한 것 중 일부는 JVM 수준에서 사용 가능한 코드 및 리소스이므로 JVM 수준에서 정책 파일을 설정하는 모든 기능이 있습니다.

그러나 Java EE는 Java SE 위에 구축되었으므로 JAA의 몇몇 모듈이 LoginModules 및 콜백과 같은 Java EE 보안에서 재사용되었습니다.

Java EE Security 외에도 Spring Security (이전에 ACEGI라고도 함)가 있으며, 이는 Native Java EE Security와 유사한 웹 응용 프로그램 문제에서 훨씬 높은 "계층"을 다룹니다. 별도의 보안 구현이며 표준 Java EE 보안 위에 구축되지는 않지만 많은면에서 유사하게 작동합니다.

요약하면, Java SE 레벨 (클래스, 시스템 리소스)에서 리소스를 확보하려고하지 않는 한, 공통 클래스 및 인터페이스 사용을 사용하는 것 외에는 JAA를 실제로 사용하지 않습니다. 많은 일반적인 웹 애플리케이션 보안 문제를 해결하는 스프링 보안 또는 평범한 오래된 Java EE 보안을 사용하는 데 집중하십시오.

javax.security는 IMHO 과잉 복잡한 API입니다. 결과적으로 LoginModules뿐만 아니라 인증 및 인증 관리자와 같은 위의 추상화 계층을 생성하는 전체 인증 및 인증 API의 구현자가 있습니다.

우선, 인쇄하는 것이 좋습니다 이것 당신의 기억 속에.

둘째, Jaas의 가장 간단한 설정 및 GO 라이브러리 인 IMHO는 JBoss입니다. 피켓 박스. JbossauthenticationManager 및 JbossauthorizationManager를 통한 인증 및 승인을 수행하는 방법은 XML 또는 주석을 통해 쉽게 구성 할 수 있습니다. WebApps 및 독립형 응용 프로그램을 모두 관리하는 데 사용할 수 있습니다.

리소스에 대한 ACL 측면에서 저장소 액세스를 관리하기위한 권한 부품이 필요한 경우, 이것이 확실히 찾고있는 것입니다.

보안 문제는 일반적으로 보안이 필요에 맞게 사용자 정의해야하므로 구현할 수 있다는 것입니다.

로그 모듈 - 사용자 이름 + 비밀번호를 확인합니다

콜백 핸들러 이와 같이 사용됩니다 new LoginContext("Sample", new MyCallbackHandler());

CallbackHandler는 기본 로그 인 모듈로 전달되어 사용자와 통신하고 상호 작용할 수 있습니다. 예를 들어 그래픽 사용자 인터페이스를 통해 사용자 이름과 비밀번호를 제기합니다. 따라서 핸들러 내부에서 사용자로부터 사용자 이름과 비밀번호를 얻을 수 있으며 LoginModule로 전달됩니다.

logincontext - 그런 다음 lc.login ()을 호출합니다. 자격 증명을 인증합니다. logincontext는 인증 된 주제로 채워집니다.

그러나 Jboss Picketbox는 특정한 것을 필요로하지 않는 한 정말 쉬운 방법을 제공합니다.

LSIU의 대답은 여기서 "실제로"이라는 몇 가지 답변 중 하나입니다.)

그 대답에 추가하면이 주제에 대한 정말 좋은 참조는 Jaas는 어떻게 되었습니까?.

Servlet과 EJB 보안 모델과 JAAS 로그인 모듈 사이의 Java EE의 JASPIC 인 방법을 설명하지만, 많은 경우 JAAS의 역할이 Java EE의 비교적 간단한 사용자 이름 및 역할 제공 업체의 역할로 줄어 듭니다.

같은 저자로부터 기업의 Jaas, 이 기사는 오래된 기사이지만 Java SE (JAAS)와 Java EE 모델이 왜 그런 방식으로 분기 된 이유에 대한 많은 역사적 배경을 제공합니다.

전반적으로 JAA의 몇 가지 유형은 Java EE에서 직접 사용됩니다. Principal , Subject, 그리고 CallbackHandler. 후자는 주로 jaspic에 의해 사용됩니다. 기사에서 jaspic을 설명했습니다 Jaspic을 사용하여 Java EE에서 컨테이너 인증 구현.

나는 Jaas 자체에 너무 많이 말할 수 없지만 이것은 "제안 된 단계"가이드 스프링 보안 및 참조 설명서 Spring Security의 훌륭한 리소스입니다. 설정이 단순한 경우에 가까운 경우, 실제로 읽는 것보다 훨씬 더 많은 일을 할 필요는 없습니다.

순전히 JAAS 튜토리얼을 확인하십시오 이것. 오래되었지만 JAAS 기본 사항에 도움이되어야합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top