* GRANT, REVOKE, DENY and access_checker DONE * Added AccessChecker to ExecutionContext * grammar expanded; (#462) * current * T0954 mg expand user and role to hold permissions on labels (#465) * added FineGrainedAccessPermissions class to model * expanded user and role with fine grained access permissions * fixed grammar * [E129 < T0953-MG] GRANT, DENY, REVOKE added in interpreter and mainVisitor (#464) * GRANT, DENY, REVOKE added in interpreter and mainVisitor * Commented labelPermissons * remove labelsPermission adding * Fixed * Removed extra lambda * fixed * [E129<-T0955-MG] Expand ExecutionContext with label related information (#467) * added * Added FineGrainedAccessChecker to Context * fixed * Added filtering * testing * Added edge filtering to storage, need to add filtering in simple Expand in operator.cpp * Removed storage changes * MATCH filtering working * EdgeTypeFiltering working, just need to test everything again * Removed FineGrainedAccessChecker * Removed Expand Path * Fix * Tested FineGrainedAccessHandler, need to test AuthChecker * Added integration test for lba * Fixed merge conflicts * PR fix * fixed * PR fix * Fix test * removed .vscode, .cache, .githooks * githooks * added tests * fixed build * Changed ast.lcp and User pointer to value in context.hpp * Fixed test * Remove denies on grant all * AuthChecker * Pr fix, auth_checker still not fixed * Create mg-glue and extract UserBasedAuthChecker from AuthChecker * Build fixed, need to fix test * e2e tests * e2e test working * Added unit test, e2e and FineGrainedChecker * Mege E129, auth_checker tests * Fixed test * e2e fix Co-authored-by: Boris Taševski <36607228+BorisTasevski@users.noreply.github.com> Co-authored-by: josipmrden <josip.mrden@external-basf.com> Co-authored-by: János Benjamin Antal <benjamin.antal@memgraph.io> |
||
---|---|---|
.githooks | ||
.github | ||
cmake | ||
config | ||
docs | ||
environment | ||
include | ||
libs | ||
licenses | ||
query_modules | ||
release | ||
src | ||
tests | ||
tools | ||
.clang-format | ||
.clang-tidy | ||
.gdbinit | ||
.gitignore | ||
.pre-commit-config.yaml | ||
CHANGELOG.md | ||
CMakeLists.txt | ||
CODE_OF_CONDUCT.md | ||
CONTRIBUTING.md | ||
Doxyfile | ||
init | ||
LICENSE | ||
README.md |
Build modern, graph-based applications on top of your streaming data in minutes.
📋 Description
Memgraph is a streaming graph application platform that helps you wrangle your streaming data, build sophisticated models that you can query in real-time, and develop graph applications.
Memgraph directly connects to your streaming infrastructure. You can ingest data from sources like Kafka, SQL, or plain CSV files. Memgraph provides a standard interface to query your data with Cypher, a widely-used and declarative query language that is easy to write, understand and optimize for performance. This is achieved by using the property graph data model, which stores data in terms of objects, their attributes, and the relationships that connect them. This is a natural and effective way to model many real-world problems without relying on complex SQL schemas.
Memgraph is implemented in C/C++ and leverages an in-memory first architecture to ensure that you’re getting the best possible performance consistently and without surprises. It’s also ACID-compliant and highly available.
🎮 Memgraph Playground
You don't need to install anything to try out Memgraph. Check out our Memgraph Playground sandboxes in your browser.
💾 Download & Install
Windows
macOS
Linux
You can find the binaries and Docker images on the Download Hub and the installation instructions in the official documentation.
⚡ Features
- Run Python, Rust, and C/C++ code natively, check out the MAGE graph algorithm library
- Native support for machine learning
- Streaming support
- Replication
- Authentication and authorization
- ACID compliance
📑 Documentation
The Memgraph documentation is available at memgraph.com/docs.
❓ Configuration
Command line options that Memgraph accepts are available in the reference guide.
🏆 Contributing
The main purpose of this repository is to continue evolving Memgraph, making it faster and easier to use. Development of Memgraph happens in the open on GitHub, and we are grateful to the community for contributing bug fixes and improvements. Read below to learn how you can take part in improving Memgraph.
Code of Conduct
Memgraph has adopted a Code of Conduct that we expect project participants to adhere to. Please read the full text so that you can understand what actions will and will not be tolerated.
Contributing Guide
Read our contributing guide to learn about our development process and how to propose bug fixes and improvements.
Internals
Read our internal docs to learn more about Memgraph's architecture, how to build the project from source and how to start contributing. All information related to the database, can be found in the aforementioned docs.
📜 License
Memgraph Community is available under the BSL
license.
Memgraph Enterprise is available under the
MEL license.