@Nonnull SecurityProvider securityProvider) {
this.root = root;
this.namePathMapper = namePathMapper;
privilegeManager = getConfig(securityProvider, PrivilegeConfiguration.class).getPrivilegeManager(root, namePathMapper);
bitsProvider = new PrivilegeBitsProvider(root);
principalManager = getConfig(securityProvider, PrincipalConfiguration.class).getPrincipalManager(root, namePathMapper);
acConfig = getConfig(securityProvider, AuthorizationConfiguration.class);
restrictionProvider = acConfig.getRestrictionProvider();
ntMgr = ReadOnlyNodeTypeManager.getInstance(root, namePathMapper);