2016-06-01 6 views
0

스프링 보안 ACL lib에 대해 읽었으며 약간의 개념에 대해 약간 혼란 스럽습니다. SID에 관해서는, 내 혼란 상태 :ACL Principal vs GrantedAuthority 개념

ACL_SID 우리 고유 에서 ("SID"는 "보안 ID"의 약자) 시스템을 어떤 교장 권한을 식별 할 수 있습니다. 의 유일한 열은 ID, SID의 텍스트 표현이며 의 플래그는 텍스트 표현이 prncipal 이름 또는 GrantedAuthority를 ​​나타내는지 여부를 나타냅니다.

그래서 역할이 주체와 동일합니까? GrantedAuthority는 동등한 개념인가 특정 역할인가? 부울 필드 principal = true는 식별자가 의미 적 값을 가지거나 단순히 시스템 내에서 역할을한다는 것을 의미합니까? 그렇다면 왜 시스템에 포함되지 않은 SID를 저장하려고합니까?

답변

1

ACL (액세스 제어 목록)은 항목 또는 규칙을 적용 할 사용자 또는 사용자 그룹 인 시드을 참조하는 여러 항목 (규칙)으로 구성됩니다.

주 필드 true로 설정된 경우
  • 는 SID는 단일 사용자 인, 주체이다. 그런 다음 sid 필드에 사용자 이름이 포함됩니다.

  • 기본 필드가 false으로 설정된 경우, sid는 ROLE_ADMIN과 같은 권한입니다. GrantedAuthority는 기본적으로 역할과 동일합니다 (역할은 일종의 권한입니다).