2011-04-29 2 views
0

저지 프레임 워크 및 Java를 사용하여 REST 웹 서비스에서 인증하는 방법은 무엇입니까? NetBeans IDE를 사용하고 Rest 웹 서비스를 만들었습니다. 응용 프로그램 서버는 glassfish입니다. javadb 또는 derby를 사용하지 않습니다. 내 데이터베이스는 mongodb입니다. 나는 google가 있고 http://weblogs.java.net/blog/mhadley/archive/2008/03/authentication.html를 찾아 냈다. 그러나 그 사이트는 더비 데이터베이스를 사용한다고 설명했습니다. 인증을 위해 web.xml에서 어떻게 구성해야합니까?jersey 및 java를 사용하여 REST 웹 서비스에서 인증하는 방법

답변

1

코드 & 기본 인증이 작동하는지 테스트하려면 glassfish의 file 영역을 사용할 수도 있습니다.

<login-config> 
    <auth-method>BASIC</auth-method> 
    <realm-name>file</realm-name> 
</login-config> 
<security-role> 
    <description/> 
    <role-name>USERS</role-name> 
</security-role> 

나중에 당신이 JDBC 영역으로 전환하여 MongoDB와 영역에 사용할 JDBC 데이터 소스를 추가 할 수 있습니다 : 그 파일 영역에 사용자를 추가하고 web.xml 파일에서 구성을 수정할 경우 .

+1

상당 규모의 인구가 늘어날 염려가 없다면 각 앱 서버는 자체 "파일"구현을 갖게 될 것입니다. proof-of-concept을위한 아주 쉬운. – jayraynet

0

응용 프로그램이 다른 db를 사용하는 경우에도 링크를 사용하면 인증 작업을 할 수 있습니다. 그런 다음 별도의 db에 사용자 자격 증명을 갖게됩니다 (이 경우 derby이지만 jdbc 드라이버가있는 db는 자유롭게 사용할 수 있습니다).

인증을 위해 다른 '영역'을 사용할 수도 있습니다. 몇 명의 사용자 만 있고 응용 프로그램 코드에서 사용자 이름/암호를 변경할 필요가 없으면 glassfish에서 'filerealm'을 사용할 수 있습니다.

나만의 영역을 디자인 할 수도 있지만 더 많은 작업이 필요합니다. 그것에 관한 블로그 항목을 찾거나 GlassFish 소스 코드에서 영감을 얻을 수 있습니다.

mongodb에 대해 언급 된 'jdbcrealm'을 사용할 수 없다고 생각합니다. 전체 jdbc 드라이버가 있다고 생각하지 않습니다. (아마도 mongodb는 문서 지향적입니다. 데이터베이스가 아니라 관계형 데이터베이스). mongodb에서 사용자와 그룹을 정의해야하는 경우 사용자 정의 영역을 작성해야합니다.

관련 문제