2011-04-25 2 views
0

나는 다음과 비슷한 시나리오에 대한 토큰 기반 인증 메커니즘을 구현하려는 이메일 초대장에서 바로 이러한 이벤트에 응답 할 수 있습니다. 이러한 이벤트 초대에는 URL에 인코딩 된 인증 토큰을 사용하여 응답하는 각 링크 (예, 아니요, 어쩌면)가 포함됩니다. 이러한 인증 토큰은 특정 이벤트 및 사용자로 제한됩니다.토큰 기반 인증은 6

제한된 작업 만 수행 할 수 있고 제한된 리소스에만 액세스 할 수 있으며 제한된 기간 동안 만 유효한 이러한 "일회성"토큰을 생성하는 가장 좋은 방법은 무엇입니까? 그리고 이것을 Glassfish에서 어떻게 구현합니까? Jersey를 사용하여 내 애플리케이션의 RESTful API를 통해이를 노출하고 싶다. 현재, 내 애플 리케이션의 모든 URL 경로는 web.xml에서 구성한 인증 제한 조건으로 보호됩니다.

  1. 더 인증 제한이 적용되지 않는 URL (예를 들어,/token_auth)를 제공하고 토큰 인증이 사용 : 다음과 같이에

    내 접근 방식이 될 것입니다.

  2. 웹 서비스 메서드에서 수동으로 보안 토큰을 확인하고 필요한 작업을 수행하십시오. 토큰은 사용자 이름, 만료일, 인증 된 리소스 등과 같은 정보와 함께 DB에 저장됩니다.

나는 프레임 워크 나 내장 된 컨테이너 기능을 사용하여보다 우아한 솔루션이 있는지 궁금해하고 있습니다. 모든 수동 작업. 그리고이 솔루션이 몇 가지 보안 단점을 가지고 있는지 여부. Newbie at JAAS authentication; Sign in using a token in the URL Bar

답변

1

당신이 UUID를 들여다 보게한다

비슷한 질문 SO 이전에 요청하고있다?

직장에서 우리는 Safehaus UUID을 사용합니다.

+0

아니요, 나는 그것을 보았습니다. Java의 내장 UUID 클래스에 비해이 기능의 장점은 무엇입니까? 능률? 내 질문의 나머지 부분은, 내가 설명한 것과 같은 방식으로 문제에 접근하겠습니까? 직장에서 글래스 피쉬도 사용합니까? – Theo

+0

개인적으로 기본 Java 구현에 비해 Safehaus 버전의 UUID를 사용하는 추론을 개인적으로 알지 못합니다. 필요한 경우 차이점을 찾을 수 있습니다. – hooknc

+0

일반적으로 캘린더와 같은 개인 정보에 액세스 할 수있는 권한을 부여하기 위해 토큰을 사용하는 것에주의해야합니다. 이벤트 정보가있는 URL을 생성 한 다음 토큰 때문에 액세스 권한을 부여하는 대신 사용자가 url을 보내도록 만들었습니까? 나는 글래스 피쉬 (Glassfish) 또는 저지 (Jersey)를 사용하지 않았지만,이 경우에는 정말로 중요하지 않습니다. 사용중인 보안 프레임 워크는 무엇입니까? 만약 당신이 하나를 사용하지 않는, 당신은 봄 보안 3을 사용하는 것이 좋습니다. – hooknc

1

잘 보이는 군. 나는 당신을 위해 이런 종류의 일을 할 수있는 틀을 알고 있지 않습니다. Spring Security에는 사용할 수있는 것이 있지만 전부는 아닙니다.

관련 문제