2011-01-16 3 views
25

이것은 매우 간단하고 자주 묻는 질문이며 모든 웹 응용 프로그램의 일부로 자주 개발됩니다. - 사용자가 새 계정 프로필에 가입해야합니다. - 기본 응용 프로그램 인증을 사용하여 사용자를 인증하십시오. (웹 사이트에서 웹 응용 프로그램을 작성하려고합니다./페이스 북이나 구글이나 야후 나 오픈 ID 로그인 - 허용 잃어버린 암호 검색 - 세션 처리는 내가하는 데 사용할 수있는 상자 프레임 워크 (드루팔,을 Liferay, Tynamo와 태피스트리, 개찰구 ??)의 종료를하지웹 응용 프로그램 - 인증/로그인 프레임 워크

필요 JS와 함께 JSP 또는 HTML의 무리가 될 수 내 응용 프로그램을 래핑? 나는 매우 간단하고 어쩌면 순진한 질문을하고있다. 그러나 이것은 모든 웹 개발자 전문가들이 통과 할 수있는 주제입니다. 어떤 도움, 조언 및 포인터 많이 감사합니다.

답변

27

아파치 시로에서 보라는 권유를 줄 : http://shiro.apache.org/

그것은 응용 프로그램의 보안 부분을 처리하고 당신에게 물건을 보호하는 방법에 상당한 유연성을 제공합니다. 예를 들어 주석을 추가하여 개별 메소드를 보호 할 수 있습니다 (예 : 관리자가 아닌 경우이 메소드를 실행할 수 없음). 개별 페이지 (예 : 관리자가 아닌 경우이 페이지를로드 할 수 없음) 및 URL 패턴 (URL에/admin/*을 포함하는 모든 항목에 액세스하려면 admin이어야합니다).

시루 (Shiro)는 보안이 얼마나 복잡한 지 알려 주시면 사용하기가 매우 쉽습니다. 처음에는 몇 가지 개념에 대해 머리를 숙이려면 약간의 시간이 걸릴 수 있지만 시로는 가능한 한 많은 복잡성을 감추는 아주 좋은 작업을 수행합니다. 또한 사용자 목록은 매우 반응적이고 매우 유용합니다.

Tapestry를 사용하는 경우 http://tynamo.org/tapestry-security+guide을 볼 수 있습니다. Shiro를 Tapestry 응용 프로그램에서 쉽게 실행하고 실행할 수있게 해주 며 템플릿에서 사용하기 쉬운 몇 가지 태그를 제공합니다.

시로 (Shiro)는 OpenID, OAuth 또는 Facebook 통합 기능을 제공하지 않지만 가능성이 높습니다. 해당 부분을 애플리케이션에 맞게 사용자 정의해야합니다. 이러한 유형의 인증을 프레임 워크에 사용하는 데 도움이되는 기능을 통합하는 데 도움이되는 몇 가지 작업이 있다고 생각합니다.

시로 (Shiro)를 기반으로하는 프레임 워크 중 일부는 사용자가 찾고있는 것보다 더 많은 것을 제공 할 수 있습니다. 예를 들어 http://tynamo.org/tynamo-federatedaccounts+guide은 태피스 트리 응용 프로그램에서 페더레이션 된 로그인에 대한 추가 지원을 제공합니다. 아직 초기 단계에 있지만 Tapestry를 사용하고 있는지 조사하고있을 수도 있습니다. 비록 그것이 당신이 필요로하는 것과 정확히 일치하지 않는다고하더라도, 그것은 좋은 예를 보여줄 것입니다. 보조 노트로 http://static.springsource.org/spring-security/site/

:

당신은 또한에 관심이있을 수있는 보안뿐만 아니라 당신이 일반적인 웹 프로젝트에 필요한 다른 기술의 무리 아마이 있습니다. 보안, 지속성, 기본 사용자 관리 등이 필요할 수 있습니다. 많은 웹 응용 프로그램을 만드는 경우 새로운 기본 응용 프로그램을 빠르게 실행하여 모든 초기 구조로 코딩을 시작할 수있는 maven 아키타 입을 만들 가치가 있습니다 이미 자리에 있습니다. AppFuse는이 작업을 시도하지만, 웹 프레임 워크의 경우 여러 가지 선택을 할 수 있도록하는 것을 목표로합니다. 어떤 기술을 사용하는지 알고 있다면 사용자의 필요에 맞게 사용자 정의 된 시작 응용 프로그램을 사용하는 것이 큰 시간 낭비 일 수 있습니다.

0

아파치 시로 또는 스프링 시큐리티를 살펴 보겠습니다.