Podobnie jak w MongoDB 3.4, szczegółowość wbudowanej kontroli dostępu dotyczy tylko kontroli dostępu na poziomie kolekcji.
Na przykład możesz utworzyć zdefiniowaną przez użytkownika rolę ograniczającą uprawnienia dla kolekcji:
privileges: [
{ resource: { db: "db_ANIMAL", collection: "tb_BIRD" }, actions: [ "find", "update" ] }
]
Aby ograniczyć dostęp tylko do odczytu do podzbioru danych kolekcji, możesz rozważyć użycie nowej funkcji widoków w MongoDB 3.4 lub zaimplementowanie redakcji na poziomie pola za pomocą $redact
etap agregacji (MongoDB 2.6+).
Jeśli potrzebujesz bardziej szczegółowej kontroli dostępu do aktualizacji na poziomie pola, musisz obecnie zaimplementować to w swoim interfejsie API lub kodzie aplikacji.
Istnieje kilka istotnych próśb o nowe funkcje, które możesz chcieć obejrzeć/zagłosować w narzędziu do śledzenia problemów MongoDB:
- SERWER-648:kontrola dostępu na poziomie dokumentu
- SERWER-27698:widoki zmaterializowane