자체 관리 배포서버의 컬렉션 수준 액세스 제어
컬렉션 수준의 액세스 제어를 통해 관리자는 사용자에게 특정 컬렉션에만 한정된 권한 부여할 수 있습니다.
관리자는 사용자 정의 역할 을 통해 컬렉션 수준의 액세스 제어를 구현 수 있습니다. 특정 데이터베이스 의 특정 컬렉션 으로 범위가 지정된 권한 이 있는 역할 을 생성하면 관리자는 컬렉션 수준에서 권한을 부여하는 역할을 사용자에게 프로비저닝할 수 있습니다.
권한 및 범위
권한은 조치와 작업이 허용되는 리소스로 구성됩니다. 리소스는 해당 권한에 대한 작업의 범위를 정의합니다.
관리자는 권한에 대해 리소스 문서에 데이터베이스와 컬렉션을 모두 지정하여 특정 데이터베이스의 특정 컬렉션으로만 권한 조치를 제한할 수 있습니다. 역할의 각 권한 조치는 다른 컬렉션로 범위를 지정할 수 있습니다.
예를 들어 사용자가 정의한 역할에는 다음과 같은 권한이 포함될 수 있습니다:
privileges: [ { resource: { db: "products", collection: "inventory" }, actions: [ "find", "update", "insert" ] }, { resource: { db: "products", collection: "orders" }, actions: [ "find" ] } ]
첫 번째 권한은 해당 조치의 범위를 products
데이터베이스의 inventory
컬렉션으로 지정합니다. 두 번째 권한은 해당 조치의 orders
범위를 데이터베이스의 컬렉션으로 products
지정합니다.
컬렉션에 대한 읽기 권한이 없는 사용자에게 createCollection
권한을 할당하지 않는 것이 좋습니다.
추가 정보
사용자 정의 역할 및 MongoDB 권한 부여 모델에 대한 자세한 내용 은 자체 관리 배포서버의 역할 기반 액세스 제어를 참조하세요. 사용자 정의 역할 생성에 대한 튜토리얼 은 자체 관리 배포서버에서 사용자 및 역할 관리를 참조하세요.