diff --git a/src/query/interpreter.cpp b/src/query/interpreter.cpp index aa60dc51e..990c408b8 100644 --- a/src/query/interpreter.cpp +++ b/src/query/interpreter.cpp @@ -263,9 +263,12 @@ class LabelChecker final : public memgraph::query::LabelChecker { public: explicit LabelChecker(memgraph::auth::User *user) : user_{user} {} - bool IsUserAuthorized(const std::vector &labels) const final { - return std::any_of(labels.begin(), labels.end(), [this](const auto label) { - return user_->GetLabelPermissions().Has(dba_->LabelToName(label)) == memgraph::auth::PermissionLevel::GRANT; + bool IsUserAuthorized(const std::vector &labels, + memgraph::query::DbAccessor *dba) const final { + auto labelPermissions = user_->GetLabelPermissions(); + + return std::any_of(labels.begin(), labels.end(), [labelPermissions, dba](const auto label) { + return labelPermissions.Has(dba->LabelToName(label)) == memgraph::auth::PermissionLevel::GRANT; }); }