컴퓨터 지식 네트워크 - 컴퓨터 문답 - Zookeeper 에 대한 ACL 등록 정보를 설정합니다.

Zookeeper 에 대한 ACL 등록 정보를 설정합니다.

Zookeeper 에 대한 ACL 등록 정보를 설정합니다.

ZkCli 를 예로 들어 zookeeper 의 ACL 설정을 살펴보겠습니다.

ZkCli 를 사용할 경우 ACL 형식은

참고: zookeeper 의 권한 제어는 znode 수준에서 상속되지 않습니다. 즉, 자녀는 부모의 권한을 상속하지 않습니다. 이러한 설계는 여전히 결함이 있습니다. 많은 시나리오에서 관련 자원을 구성하여 동일한 경로 아래에 두기 때문에 경로 통합 권한 부여가 필요하기 때문입니다. (데이비드 아셀, Northern Exposure (미국 TV 드라마), 사용, 사용, 사용, 사용, 사용, 사용, 사용)

이것은 기본 모드이며 인증이 없음을 나타냅니다. 권한을 설정하지 않고 새 노드 (znode) 를 만들 경우 값은 다음과 같습니다.

/noACL 을 보는 ACL 은 world 스키마에 속합니다. ACL 속성이 설정되어 있지 않기 때문에 누구나 이 노드에 액세스할 수 있습니다.

이 속성을 수동으로 설정하는 경우 id 필드에 하나의 값만 허용됩니다. 누구나 다음 형식을 사용합니다.

이 권한 부여는 모든 특성 ID 에 대한 것이 아니라 인증이 추가된 모든 사용자, 즉 인증을 통과한 모든 사용자에 대한 것입니다.

사용법은 다음과 같습니다.

참고:

예를 들면 다음과 같습니다.

이 예에서는 먼저 Tom 1, Tom 2, Tom 3 등 세 명의 인증 사용자를 추가한 다음 setAcl 을 통해 ACL 을 설정하고 명령에 id 를 tom2 로 지정했습니다. 앞서 언급한 바와 같이 이 id 값은 무시되어 어떤 값에도 쓰면 빈 값이라도 같은 결과를 얻을 수 있다. 마지막 getAcl 쿼리 결과에는 이전에 추가한 세 명의 인증된 사용자가 모두 포함되어 있습니다.

추가 정보: zkCli 명령 addauth digest user:pwd 는 현재 컨텍스트에 인증 사용자를 추가하는 데 사용됩니다.

사실, 나는이 기능을 이해하지 못한다. 한 세션에 인증된 사용자를 여러 명 추가할 수 있습니까? 검증할 때 어느 것을 계산해야 합니까? 사용자마다 다른 인증이 있을 경우 권한 충돌이 발생합니까? 누가 우세합니까?

몇 가지 요약:

따라서 이러한 라이센스 방식은 제품 환경보다 테스트 개발 환경으로 사용될 가능성이 더 큽니다.

가장 일반적인 사용자 이름인 암호 인증 방법으로 일반 비즈니스 시스템에서 가장 많이 사용됩니다.

형식은 다음과 같습니다.

Schema auth 와 비교하여 두 가지 차이점이 있습니다.

암호는 다음 셸 방법으로 생성할 수 있습니다.

예를 들면 다음과 같습니다.

또는 zookeeper 의 라이브러리 파일을 사용하여 다음을 생성할 수 있습니다.

출력 루트: jalrr+knv/6l2 uxdenc 93 ded NUE = 는 setAcl 에 전달된 id 문자열입니다.

ZkCli.sh 를 통해 digest 의 ACL 을 설정할 때 id 는 암호문만 필요하고 zookeeper 클라이언트를 통해 digest 의 ACL 을 설정할 때 해당 auth 데이터는 일반 텍스트입니다. 이것은 코딩 구현의 문제입니다.

Auth 에 비해 digest 는 다음과 같은 특징을 가지고 있습니다.

클라이언트 주소, 호스트 이름 또는 IP 주소입니다.

호스트 이름은 단일 호스트 이름 또는 도메인 이름일 수 있습니다. IP 는 단일 IP 주소이거나 IP 주소 세그먼트일 수 있습니다 (예: IP:192.168.1.0//kloc-0)

이것은 자세히 설명하지 않겠습니다. 비교적 간단합니다. 검증되지 않았습니다.

수퍼유저를 설정합니다. Zookeeper 를 시작하기 전에 zookeeper 내에서 이 수퍼유저에 대한 설정을 설정해야 합니다. 이 시나리오에서는 수퍼 유저가 권한 없이 모든 것을 할 수 있는 수퍼 권한을 가지고 있습니다 (cdrwa).

5. 1 zookeeper 환경 변수 SERVER_JVMFLAGS 설정:

5.2 zookeeper 다시 시작

/test 노드를 만들고 ACL 을 Jerry 1 user 로 설정합니다.

5.3 인증 사용자 Tom 추가

5.4 액세스 노드/테스트

이번에는 Tom 사용자에게 권한이 없기 때문에 실패했습니다.

5.3 인증된 사용자 루트 추가

5.4 노드/테스트에 다시 액세스

성공, root 가 /test 의 ACL 목록 (Jerry 1 사용 가능) 에 없지만 root 가 zookeeper 클러스터에서 수퍼유저로 구성되기 때문에 액세스할 수 있습니다.

上篇: 건설현장에서 뼈를 파내고 월스트리트 시위자를 점령한 것으로 확인됐다. 여러분은 어떻게 생각하십니까? 下篇: BMW 자동차의 데이터 케이블을 통해 음악이 간헐적으로 재생되는 이유는 무엇입니까?
관련 내용