0

jax rs 구현을 처음 사용합니다. jax rs를 사용하여 웹 서비스가 포함 된 RESTful 응용 프로그램을 만들었습니다. 그러나 일부 웹 서비스에 인증 및 권한 부여를 제공하려고합니다. 인증을 위해 web.xml을 구성 할 수 없습니다. 미리 감사드립니다.스프링 보안이없는 CXF 프레임 작업을 사용하는 Jax rs 인증

+0

어떤 컨테이너를 사용하고 있습니까? 수코양이? 다른? –

+0

당신은 당신이 어떻게 허가를 받기를 원하는지 언급하지 않았습니다. 페이로드를 확인하고 XACML 결정 엔진에 권한 요청을하는 JAX-RS 핸들러를 사용할 수 있습니다. –

답변

0

컨테이너 수준 인증을 사용할 수 있습니다. 예를 들어, Apache Tomcat에서는 HTTP 기반 인증 (예 : BASIC, DIGEST 또는 심지어 FORM 기반)을 구성 할 수 있습니다. 단, 후자는 API에 적합하지 않습니다.

예로 들어 HTTP 기본 인증을 구성하려면 다음을 수행해야합니다

  • 사용자 저장소에 사용자를 정의하고 여기에 Tomcat을 연결합니다. 기본적으로 Tomcat은 사용자를 정의하는 데 사용할 수있는 tomcat-users.xml 파일을 제공합니다. 당신의 web.xml이 security-role을 추가 또한 login-config 요소를
  • 업데이 트를 추가
  • 갱신하여 web.xml 파일이 security-constraint 요소에게 당신의 web.xml을
  • 업데이 트를 추가 소스로 LDAP를 사용하도록 Tomcat을 구성 할 수 있습니다

    <security-constraint> 
        <web-resource-collection> 
         <web-resource-name>Protected Area</web-resource-name> 
         <url-pattern>/*</url-pattern> 
         <http-method>PUT</http-method> 
         <http-method>DELETE</http-method> 
         <http-method>GET</http-method> 
         <http-method>POST</http-method> 
        </web-resource-collection> 
        <auth-constraint> 
         <role-name>basic-user</role-name> 
        </auth-constraint> 
    </security-constraint> 
    <login-config> 
        <auth-method>BASIC</auth-method> 
    </login-config> 
    <security-role> 
        <role-name>basic-user</role-name> 
    </security-role> 
    

    : 여기

요소는 예를 조각이다

여기에 이미 유용한 답변이 있습니다. Easy way for Authentication and Authorization with JAX-RS Jersey

+0

응답 해 주셔서 감사합니다. 나는 tomcat 컨테이너를 사용하고 있습니다. 그러나 벤더 (ROLE_VENDOR)와 슈퍼 관리자 ((ROLE_SUPERADMIN))에게 API 키를 제공 할 수 있습니다. 내 database.So와 함께 jaxrs를 사용하여 인증하려고합니다. cxf 및 일부 웹 서비스는 공급 업체에 대한 승인이 필요하지만 최고 관리자는 모든 권한을 가질 수 있습니다. – Test