neo4j-security-skill

Manage Neo4j users, roles, and GRANT/DENY privileges via Cypher.

101|35|Updated Jan 20, 2026
One-click install
npx skills add https://github.com/neo4j-contrib/neo4j-skills --skill neo4j-security-skill
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: neo4j-security-skill
Source: https://github.com/neo4j-contrib/neo4j-skills/tree/main/neo4j-security-skill
Command: npx skills add https://github.com/neo4j-contrib/neo4j-skills --skill neo4j-security-skill

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill prevents privilege misconfiguration by guiding agents to manage Neo4j security controls—users, roles, and GRANT/DENY privileges—directly from Cypher against the system database.

Core Features & Use Cases

  • User management: Create, alter, suspend/activate, and drop users with the right account settings.
  • Role management: Create/drop roles and grant or revoke role membership to users.
  • Privilege grants & inspection: Grant or deny graph, database, and DBMS privileges, then verify outcomes with SHOW PRIVILEGES / SHOW ROLE.
  • Enterprise access controls: Apply property-level and sub-graph access restrictions for fine-grained data visibility.
  • ABAC with OIDC: Create auth rules that dynamically map OIDC/JWT claims to roles.

Quick Start

Ask the agent to create a least-privilege read-only role that can connect to database mydb and view Person properties except the ssn property, and then return the generated runnable verification commands to confirm the resulting privileges.

Frequently Asked Questions about neo4j-security-skill

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I manage Neo4j users and roles programmatically via Cypher?

You can manage Neo4j users and roles programmatically by executing Cypher commands against the system database to create, alter, suspend, activate, or drop users and assign role memberships safely.

How do I configure property-level and sub-graph access restrictions in Neo4j?

To configure property-level and sub-graph access restrictions in Neo4j, apply Enterprise access controls using GRANT and DENY privilege rules to enforce fine-grained data visibility for specific roles.

Can I map OIDC JWT claims to Neo4j roles dynamically?

Yes, you can map OIDC JWT claims to Neo4j roles dynamically by creating authorization rules that support Attribute-Based Access Control, mapping external identity provider claims directly to database roles.

What is the best way to verify Neo4j GRANT and DENY privileges after applying them?

The best way to verify Neo4j GRANT and DENY privileges after applying them is to run SHOW PRIVILEGES or SHOW ROLE commands against the system database to inspect the resulting access configurations.

Does this Neo4j security management approach require manual confirmation before changing privileges?

Yes, this Neo4j security management approach enforces a mandatory write gate that blocks automatic privilege-changing statements until explicit confirmation is provided, preventing accidental privilege misconfiguration.

Why do I need a least-privilege read-only role for my Neo4j database?

A least-privilege read-only role for your Neo4j database limits users to viewing specific graph data, such as excluding sensitive properties like ssn, ensuring strict governance and compliance while maintaining access.