en-US/about_PSNeo4j.help.txt
TOPIC about_PSNeo4j SHORT DESCRIPTION PSNeo4j is a module to simplify working with Neo4j data DETAILED DESCRIPTION PSNeo4j is a module to simplify working with Neo4j data Think of this like a simplified (Ruby) Bundler, or (Python) pip requirements files Common Parameters and PSNeo4j Configuration =========================================== Many functions end up calling Invoke-Neo4jQuery. These functions and a few others end up passing on some common parameters, including: Credential: PSCredential to use for auth BaseUri: BaseUri to build REST endpoint Uris from As: What to return. See ConvertFrom-Neo4jResponse for details: Parsed: We attempt to parse the output into friendlier PowerShell objects Please open an issue if you see unexpected output with this Raw: We don't touch the response ($Response) Results: We expand the 'results' property on the response ($Response.results) Row: We expand the 'row' property on the responses results ($Response.results.data.row) MetaProperties: Merge zero or any combination of these corresponding meta properties in the results: 'id', 'type', 'deleted' MergePrefix: If MetaProperties is specified, we add this prefix to avoid clobbering existing neo4j properties Default values when you initialize PSNeo4j: Credential = $null BaseUri = 'http://127.0.0.1:7474' As = 'Parsed' MetaProperties = @('Type') MergePrefix = 'Neo4j' You can set these properties with Set-PSNeo4jConfiguration, and view them with Get-PSNeo4jConfiguration We use an embedded copy of Joel Bennett's Configuration module, defaulting to the User scope to allow serialization of credentials ============================== IMPORTANT: Injection awareness ============================== ============================== ============================== Many functions here rely on string concatenation or inerpolation, allowing for SQL injection. Be sure to validate input in general, and in particular, be aware that the following parameters are added to a query string: * Label * *Hash Hash keys (values are parameterized) * Relationship (in Constraint commands) * Property (in Constraint and Index commands) * Others I might have missed. Read the code : ) References ========== Handy PowerShell articles and projects using Neo4j: * https://github.com/BloodHoundAD/BloodHound * https://glennsarti.github.io/blog/graph-all-the-powershell-things/ * https://glennsarti.github.io/blog/using-neo4j-dotnet-client-in-ps/ * https://glennsarti.github.io/blog/powershell-neo4j-metrics/ * https://glennsarti.github.io/blog/neo4j-choco-blog/ * https://github.com/neo4j/neo4j/tree/3.2/packaging/standalone/src/main/distribution/shell-scripts/bin/Neo4j-Management Handy Neo4j references (note: cypher refers to Neo4j's query language): * http://neo4j.com/docs/cypher-refcard/current/ * https://neo4j.com/developer/cypher-query-language/ * http://neo4j.com/docs/developer-manual/current/ * http://neo4j.com/docs/rest-docs/current/ * https://neo4j.com/docs/developer-manual/current/http-api/ SEE ALSO about_PSDepend_Definitions https://github.com/RamblingCookieMonster/PSDepend |