2014-11-03 5 views
0

WS Liberty에서 역할 기반 인증 서비스를 구현하고 있습니다. 두 가지 주요 목적이있다 : 올바른 사용자 그룹이없는 사용자가 제한된 URL을 열려고하면응용 프로그램 서버 역할 기반 액세스 제어

  • 는, 그
  • 을 위해 사용할 수있는 모든 페이지를 나열하는 메뉴가 표시됩니다 오류 페이지를
  • 사용자를 보여

내 질문은 :이 동작을 구현하는 모범 사례가 있습니까? server.xml에 첫 번째 부분을 만들고 두 번째 부분을 적절한보기로 만들어야합니까? (이렇게하면 "로직"이 코드의 두 부분으로 저장됩니다. 예를 들어 새 URL을 추가해야하는 경우이를 두 개의 다른 위치에 삽입해야합니다.)

이 역할 - URL 매핑을 한 곳에 저장 하시겠습니까? 사용자가 이미 로그인 한 경우, 기본적으로

if(request.isUserInRole("roleX")) { 
    // render menu item for roleX 
} 

:

감사합니다, 당신이 응용 프로그램을 사용하면 링크 역할을 확인 보호 할 수 있습니다에서 krisy

답변

0

(의사 코드는 어떤 프레임 워크는 이미 정의 그것을위한 태그가) 에 로그인하여 제한된 페이지에 액세스하려고하면 403 Not authorized이 표시되고 web.xml 구성을 통해 해당 코드에 대한 오류 페이지를 제공 할 수 있습니다.

server.xml에서 Application binding 요소를 통해 응용 프로그램 역할에서 레지스트리에 정의 된 그룹으로의 매핑 만 제공합니다. 레지스트리 유형에 따라 특정 그룹에 사용자를 추가/제거 할 수 있습니다 (예 : server.xml 또는 LDAP 레지스트리의 경우 LDAP 관리 도구).

+0

예, 이것은 프로그래밍 방식으로 코드를 보호합니다 (반대의 방법은 절차 역할을 정의하는 것입니다). 이는 첫 번째 목표 만 해결하지만 동시에 두 가지 목표를 모두 해결하지는 않습니다. 나는 그들 모두를 해결할 수있는 해결책을 찾고있다. – krisy

+0

@krisy 절차상의 역할은 무엇을 의미합니까? 리소스를 보호 할 web.xml에서 보안 제약 조건을 정의해야한다고 언급하는 것을 잊어 버렸습니다. 프로그래밍 보안을 사용하면 표시되지 않아야하는 인터페이스 부분 만 숨길 수 있습니다. – Gas

관련 문제