카우치베이스 서버

Couchbase 7.0의 새로운 RBAC 역할

Couchbase Server 버전 7.0에서는 역할 기반 액세스 제어(RBAC) 권한 부여 시스템의 일부로 몇 가지 중요한 변경 사항이 도입되었습니다. Couchbase Server는 RBAC를 통해 플랫폼에 대한 세분화된 액세스 제어를 허용했습니다. 버전 4.5부터 관리자용 그리고 버전 5.0 이후 모든 사용자. 에서 이전 블로그 게시물에서 DBA가 일부 역할을 제어하여 범위 또는 컬렉션 수준에 대한 액세스를 제한하는 방법을 설명했습니다. 이 게시물에서는 몇 가지 역할 변경 사항과 추가된 역할을 보여드리고자 합니다.

다음은 변경 사항을 요약한 내용입니다:

    • 보안 관리자가 로컬 또는 외부 사용자 보안 관리자로 대체되었습니다.
    • 두 개의 새로운 전체 관리자 역할: 이벤트 전체 관리자 및 백업 전체 관리자
    • SQL++ 쿼리 사용자 정의 함수를 위한 8가지 새로운 함수 역할
    • 두 가지 추가 운영 역할: 범위 및 외부 통계 리더 관리

보안 관리자

RBAC가 기존 보안 관리자 역할을 충분히 좁게 정의하지 않았다는 고객 피드백을 받았습니다. 저희는 보안 관리자가 로컬 사용자, 외부 사용자 또는 둘 다 관리할 수 있도록 관리자가 선택할 수 있도록 보안을 개선하기로 결정했습니다. Couchbase Server 7.0에서는 보안 관리자의 역할을 두 가지 역할로 분리했습니다: 로컬 사용자 보안 관리자와 외부 사용자 보안 관리자. 

사용자가 보안 관리자 역할을 가지고 있는 이전 버전에서 클러스터를 업그레이드하면 역할 정의가 변경되어 기존 보안 관리자 역할 대신 새 역할을 모두 상속받게 됩니다.

새로운 로컬 사용자 보안 관리자 역할을 통해 관리자는 정의 및 저장된 사용자를 추가/제거/수정할 수 있습니다. 로컬 로 설정합니다. 이 역할은 관리자가 외부 인증 설정을 변경하는 것을 허용하지 않습니다.

그리고 외부 사용자 보안 관리자 역할을 통해 관리자는 정의 및 관리되는 사용자를 추가/제거/수정할 수 있습니다. 외부 를 LDAP 또는 Active Directory와 같은 시스템에서 클러스터에 추가합니다. 또한 이 역할은 수정 허용 외부 인증 설정을 변경할 수 있습니다.

로컬 사용자 보안 관리자 및 외부 사용자 보안 관리자를 모두 소유한 관리자는 클러스터의 모든 비관리자 사용자를 관리할 수 있습니다.

새로운 전체 관리자 역할

이벤트 및 백업에 대한 클러스터 전체 작업을 용이하게 하기 위해 Couchbase Server 7.0에 두 가지 새로운 역할을 만들었습니다: 이벤트 전체 관리자 및 백업 전체 관리자입니다.

전체 관리자 이벤트 은 강력한 관리자 역할입니다. 전체 관리자와 대부분의 기능이 동일하지만 사용자 추가 또는 제거와 같은 보안 설정의 수정이나 XDCR 수정은 허용되지 않습니다. 

전체 관리자 백업 또한 강력한 관리자 역할입니다. 이 역할 역시 전체 관리자와 대부분의 기능이 동일하지만 보안 설정을 수정할 수 없습니다. 이벤트 데이터를 백업하려는 관리자는 이 역할 또는 전체 관리자 역할이 있어야 합니다.

새로운 SQL++ 쿼리 사용자 정의 함수 역할

새로운 SQL++를 관리하거나 실행하기 위한 8개의 새로운 역할이 Couchbase Server 7.0에 추가되었습니다. 사용자 정의 기능 (N1QL UDF) 기능을 지원합니다. 이는 범위 및 전역 수준과 함수에 대한 인라인 및 외부 수준 모두에 적용됩니다:

    • 글로벌 함수 관리
    • 글로벌 함수 실행
    • 범위 기능 관리
    • 범위 함수 실행
    • 글로벌 외부 함수 관리
    • 글로벌 외부 함수 실행
    • 범위 외부 함수 관리
    • 범위 외부 함수 실행

전역 함수는 네임스페이스 내에서 네임스페이스 내의 버킷과 동일한 수준으로 생성되는 반면, 범위 함수는 범위 내에서 범위 내의 컬렉션과 동일한 수준으로 생성됩니다. 사용자 정의 함수를 만들 때 현재 쿼리 컨텍스트에 따라 전역 함수로 만들지, 아니면 범위 함수로 만들지가 결정됩니다. 함수 이름을 지정할 때 함수의 전체 경로를 포함할 수도 있습니다.

인라인 함수는 SQL++ 언어를 사용하여 함수의 기능을 정의하는 반면, 외부 함수는 JavaScript와 같은 외부 언어를 사용합니다. 

다음은 몇 가지 예입니다: 

SQL++ 함수를 관리하거나 실행할 수 있는 세분성을 제공하고 특정 범위와 실행 언어만 허용함으로써 관리자는 최소한의 권한만 제공할 수 있습니다. 최소 권한의 원칙 (PoLP). 

새로운 운영 역할

마지막으로 두 가지 운영 유형 역할이 추가되었습니다. 범위 관리 역할과 외부 통계 리더 역할입니다.

범위 관리 역할을 통해 클러스터 또는 버킷 관리자는 사용자에게 역할을 할당할 때 주어진 매개변수에 따라 버킷 수준에서 범위 및 컬렉션의 추가/제거를 위임하거나 범위 수준에서 컬렉션의 추가/제거를 위임할 수 있습니다.

외부 통계 리더 역할은 내장된 Prometheus 시스템 통계 저장소에 저장된 데이터를 제공하는 통계 엔드포인트에 액세스할 수 있도록 합니다.

결론

이 글에서는 Couchbase Server 7.0에 추가된 새로운 RBAC 역할과 그 용도에 대해 설명했습니다.

보안이 중요하다면 Couchbase 데이터를 보호하는 데 도움이 되는 RBAC 기능에 대한 몇 가지 추가 블로그 게시물을 읽어보시기 바랍니다. 

이 문서 공유하기
받은 편지함에서 카우치베이스 블로그 업데이트 받기
이 필드는 필수 입력 사항입니다.

작성자

게시자 Ian McCloy, 제품 관리 이사

이안 맥클로이는 카우치베이스의 플랫폼 및 보안 제품 관리 그룹 디렉터로 영국에 거주하고 있습니다. 그의 전담 팀은 Couchbase Server와 SaaS 데이터베이스인 Capella의 안정성, 가용성, 서비스 가능성 및 보안 아키텍처를 담당하고 있습니다. 이 팀은 또한 Couchbase Kubernetes 자율 운영자와 같은 클라우드 네이티브 플랫폼을 소유하고 있습니다. Ian은 소프트웨어 엔지니어, 기술 지원 엔지니어, 품질 보증 엔지니어, 시스템 관리자 등 다양한 경력을 보유하고 있습니다. 20년 경력의 대부분을 글로벌 기술 팀을 이끌었으며 정보 보안, 가상화 및 하드웨어 설계 분야에서 여러 특허를 보유하고 있습니다. https://www.linkedin.com/in/ianmccloy/

댓글 남기기

카우치베이스 카펠라를 시작할 준비가 되셨나요?

구축 시작

개발자 포털에서 NoSQL을 살펴보고, 리소스를 찾아보고, 튜토리얼을 시작하세요.

카펠라 무료 사용

클릭 몇 번으로 Couchbase를 직접 체험해 보세요. Capella DBaaS는 가장 쉽고 빠르게 시작할 수 있는 방법입니다.

연락하기

카우치베이스 제품에 대해 자세히 알고 싶으신가요? 저희가 도와드리겠습니다.