在 Neo4j 中,权限管理主要通过“角色(Role)+ 权限(Privilege)”机制来完成,从 4.x 开始使用标准的 Cypher 授权语句(GRANT / DENY / REVOKE)。下面按“概念 → 操作 → 常见场景”给你一个完整说明。
admin:超级管理员reader:只读editor:读写publisher:创建/修改数据architect: schema + 数据权限可以作用在:
DATABASE)LABEL / RELATIONSHIP)PROPERTY)CREATE USER alice SET PASSWORD '123456' CHANGE NOT REQUIRED;
CREATE ROLE analyst;
GRANT ROLE analyst TO alice;
SHOW USERS;
SHOW ROLES;
SHOW ROLE PRIVILEGES analyst;
READ:读数据WRITE:写数据TRAVERSE:遍历CREATE / DELETE / MERGESET LABEL / REMOVE LABELSET PROPERTYGRANT READ ON DATABASE neo4j TO analyst;
GRANT WRITE ON DATABASE neo4j TO editor;
DENY DELETE ON DATABASE neo4j TO analyst;
GRANT READ {*} ON GRAPH neo4j NODE Person TO analyst;
GRANT READ {name, age} ON GRAPH neo4j NODE Person TO analyst;
DENY WRITE ON GRAPH neo4j NODE User TO analyst;
| 功能 | 社区版 | 企业版 |
|---|---|---|
| 多用户 | ❌ | ✅ |
| 角色权限 | ❌ | ✅ |
| 细粒度权限 | ❌ | ✅ |
| LDAP / SSO | ❌ | ✅ |
⚠️ 社区版只有单个用户(neo4j),不支持权限管理
CREATE ROLE reader_role;
GRANT READ ON DATABASE neo4j TO reader_role;
CREATE USER bob SET PASSWORD 'pwd';
GRANT ROLE reader_role TO bob;
GRANT READ {*} ON GRAPH neo4j NODE PublicPost TO guest;
DENY READ ON GRAPH neo4j NODE PrivatePost TO guest;
如果你愿意,我可以:
你现在是社区版还是企业版?用在什么系统里?
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。