기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
아파치 카프카 ACLs
Apache Kafka에는 플러그형 권한 부여자가 있으며 권한 부여자 구현이 함께 제공됩니다. out-of-box Amazon은 브로커의 server.properties
파일에서 이 권한 부여자를 MSK 활성화합니다.
Apache ACLs Kafka의 형식은 “주 P는 RP와 일치하는 모든 리소스 R에 대한 호스트 H의 작업 O를 [허용/거부] 입니다.” ResourcePattern RP가 특정 리소스 R과 일치하지 않는 경우 R은 ACLs 연관되지 않으므로 수퍼 유저 외에는 누구도 R에 액세스할 수 없습니다. 이 Apache Kafka 동작을 변경하려면 속성을 true로 설정합니다. allow.everyone.if.no.acl.found
Amazon은 기본적으로 이를 true로 MSK 설정합니다. 즉, Amazon MSK 클러스터를 사용하면 리소스를 명시적으로 ACLs 설정하지 않으면 모든 보안 주체가 이 리소스에 액세스할 수 있습니다. 리소스를 ACLs 활성화하면 승인된 보안 주체만 리소스에 액세스할 수 있습니다. 주제에 대한 액세스를 제한하고 TLS 상호 인증을 사용하여 클라이언트를 승인하려면 Apache Kafka 권한 부여자를 ACLs 사용하여 추가하십시오. CLI 추가, 제거 및 나열에 대한 자세한 내용은 Kafka
클라이언트 외에도 브로커가 기본 파티션에서 메시지를 복제할 수 있도록 모든 브로커에게도 주제에 대한 액세스 권한을 부여해야 합니다. 브로커가 주제에 액세스할 수 없는 경우 주제에 대한 복제가 실패합니다.
주제에 대한 읽기 및 쓰기 액세스 권한을 추가하거나 제거하려면
-
브로커를 ACL 테이블에 추가하여 해당 브로커가 적절한 모든 주제를 읽을 수 있도록 하세요. ACLs 브로커에게 주제에 대한 읽기 액세스 권한을 부여하려면 클러스터와 통신할 수 있는 클라이언트 시스템에서 다음 명령을 실행합니다. MSK
Replace
Distinguished-Name
DNS클러스터의 부트스트랩 브로커 중 하나를 사용하여 이 고유 이름의 첫 번째 마침표 앞의 문자열을 별표 () 로 바꾸십시오.*
예를 들어, 클러스터의 부트스트랩 브로커 중 하나에 다음이 있는 경우 다음을 대체하십시오. DNSb-6.mytestcluster.67281x.c4.kafka.us-east-1.amazonaws.com
Distinguished-Name
다음 명령에서 를 입력하십시오.*.mytestcluster.67281x.c4.kafka.us-east-1.amazonaws.com
부트스트랩 브로커를 가져오는 방법에 대한 자세한 내용은 Amazon 클러스터용 부트스트랩 브로커 구하기 MSK 단원을 참조하십시오.<path-to-your-kafka-installation>
/bin/kafka-acls.sh --authorizer-properties --bootstrap-server BootstrapServerString --add --allow-principal "User:CN=Distinguished-Name
" --operation Read --group=* --topicTopic-Name
-
주제에 대한 읽기 액세스 권한을 부여하려면 클라이언트 머신에서 다음 명령을 실행합니다. 상호 TLS 인증을 사용하는 경우 동일한 방법을 사용하십시오.
Distinguished-Name
개인 키를 생성할 때 사용했습니다.<path-to-your-kafka-installation>
/bin/kafka-acls.sh --authorizer-properties --bootstrap-server BootstrapServerString --add --allow-principal "User:CN=Distinguished-Name
" --operation Read --group=* --topicTopic-Name
읽기 액세스 권한을 제거하려면
--add
를--remove
로 바꾸어 같은 명령을 실행하면 됩니다. -
주제에 대한 쓰기 액세스 권한을 부여하려면 클라이언트 머신에서 다음 명령을 실행합니다. 상호 인증을 사용하는 경우 상호 TLS 인증을 사용하세요.
Distinguished-Name
개인 키를 생성할 때 사용했습니다.<path-to-your-kafka-installation>
/bin/kafka-acls.sh --authorizer-properties --bootstrap-server BootstrapServerString --add --allow-principal "User:CN=Distinguished-Name
" --operation Write --topicTopic-Name
쓰기 액세스 권한을 제거하려면
--add
를--remove
로 바꾸어 같은 명령을 실행하면 됩니다.