Skip to content

Commit fc9133a

Browse files
Merge branch dev into cypher-25
2 parents 956ac9e + 631248d commit fc9133a

File tree

94 files changed

+515
-387
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

94 files changed

+515
-387
lines changed

.backportrc.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"repoOwner": "Neo4j",
3+
"repoName": "docs-operations",
4+
"prTitle": "[Cherry-pick][{{targetBranch}}] {{commitMessages}}"
5+
}
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
name: auto-cherry-pick
2+
on:
3+
pull_request_target:
4+
types: ["closed"]
5+
6+
jobs:
7+
backport:
8+
name: Cherry-pick PR
9+
runs-on: [ubuntu-latest]
10+
if: |
11+
github.event.pull_request.merged == true
12+
&& contains(github.event.pull_request.labels.*.name, 'auto-cherry-pick')
13+
&& github.event.action == 'closed'
14+
steps:
15+
- name: Cherry-pick action
16+
uses: sorenlouv/backport-github-action@929f69d04adbc196d982e60f02837b6cc00b3129
17+
with:
18+
github_token: ${{ secrets.DOCS_AUTO_CP_TOKEN }}
19+
auto_backport_label_prefix: auto-cherry-pick-to-
20+
add_original_reviewers: false
21+
22+
- name: Info log
23+
if: ${{ success() }}
24+
run: cat ~/.backport/backport.info.log
25+
26+
- name: Debug log
27+
if: ${{ failure() }}
28+
run: cat ~/.backport/backport.debug.log
29+
30+

README.adoc

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,3 +35,34 @@ When you run `npm start`, the project is monitored for updates to asciidoc files
3535

3636
If a change to an asciidoc file is detected the site is automatically rebuilt.
3737

38+
== Enable automatic cherry-picking on a PR
39+
40+
To enable automatic cherry-picking on a PR, add the label `auto-cherry-pick` to it.
41+
Without it, the responsible GitHub action is not going to be triggered.
42+
43+
To select the target branches you would like to cherry-pick your PR to, add labels of the following structure: `auto-cherry-pick-to-<targetBranch>`.
44+
For example: `auto-cherry-pick-to-main` to cherry-pick it to the branch `main` or `auto-cherry-pick-to-5.x` for the branch `5.x`.
45+
You may even add new labels for branches that do not have such a label yet.
46+
47+
The feature is triggered by either merging a PR with the `auto-cherry-pick` label or by adding the `auto-cherry-pick` label to an already closed and merged PR.
48+
In the latter case, ensure that you first add the labels containing the target branches and then finally the `auto-cherry-pick` label.
49+
Otherwise the automation starts without any target branches.
50+
51+
=== Details
52+
53+
The PRs created by this GitHub action will have their heading prefixed with `[Cherry-pick][<targetBranch>]`.
54+
So, for example, for `main` as the target branch and `some changes` as the original PR heading, it results in `[Cherry-pick][main] some changes` as the heading for the cherry-picked PR.
55+
In case an assignee was set for the original PR, the cherry-picked PRs will also receive the same assignee.
56+
You must add reviewers manually after the cherry-picked PRs have been created.
57+
58+
The creation of cherry-picked PRs can take a few minutes.
59+
If you are an assignee of the original PR, you receive an email notification once the cherry-picked PRs have been created.
60+
The original PR is updated with a comment that contains links to the newly created cherry-picked PRs.
61+
62+
In case of a merge conflict while cherry-picking to a specific release branch, the branch will be skipped.
63+
Information on skipped branches is also included in the comment added to the original PR.
64+
In that case you have to take care of cherry-picking manually and resolve the conflicts.
65+
This is not going to influence the other release branches as long as they do not have conflicts.
66+
67+
68+

antora.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
name: operations-manual
22
title: Operations Manual
3-
version: '2025.04'
3+
version: '2025.06'
44
current: true
55
start_page: ROOT:index.adoc
66
nav:
77
- modules/ROOT/content-nav.adoc
88
asciidoc:
99
attributes:
10-
neo4j-version: '2025.04'
11-
neo4j-version-minor: '2025.04'
12-
neo4j-version-exact: '2025.04.0'
13-
neo4j-buildnumber: '2025.04'
14-
neo4j-debian-package-version: '1:2025.04.0@'
10+
neo4j-version: '2025.06'
11+
neo4j-version-minor: '2025.06'
12+
neo4j-version-exact: '2025.06.0'
13+
neo4j-buildnumber: '2025.06'
14+
neo4j-debian-package-version: '1:2025.06.0@'

models/hospital/access-control-old.adoc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
When creating a database, administrators may want to establish which users have the ability to access certain information.
77

8-
As described in xref:authentication-authorization/built-in-roles/auth-built-in-roles[Built-in roles], Neo4j already offers preset roles configured to specific permissions (i.e. read, edit, or write).
8+
As described in xref:authentication-authorization/built-in-roles.adoc[Built-in roles], Neo4j already offers preset roles configured to specific permissions (i.e. read, edit, or write).
99
While these built-in roles cover many common daily scenarios, it is also possible to create custom roles for specific needs.
1010

1111
This page contains an example that illustrates various aspects of security and fine-grained access control.
@@ -85,7 +85,7 @@ This allows users to be created entirely within the database security model, a s
8585
For more information, see link:{neo4j-docs-base-uri}/cypher-manual/current/access-control/[Cypher Manual -> Access control].
8686

8787
The following examples show two different approaches to using Neo4j security features to support the _healthcare_ database application.
88-
The first approach uses xref:authentication-authorization/built-in-roles/auth-built-in-roles[Built-in roles], whereas the second uses more advanced resources with fine-grained privileges for <<auth-access-control-using-privileges, sub-graph access control>>.
88+
The first approach uses xref:authentication-authorization/built-in-roles.adoc[Built-in roles], whereas the second uses more advanced resources with fine-grained privileges for <<auth-access-control-using-privileges, sub-graph access control>>.
8989

9090
In this example, consider five users of the _healthcare_ database:
9191

modules/ROOT/pages/authentication-authorization/dbms-administration.adoc

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@ CREATE ROLE customAdministrator
159159
----
160160
GRANT ALL DBMS PRIVILEGES ON DBMS TO customAdministrator
161161
----
162-
. And explicitly deny the privilege to manage databases and aliases:
162+
. And explicitly deny the privilege to manage databases:
163163
+
164164
[source, cypher, role=noplay]
165165
----
@@ -172,7 +172,7 @@ DENY DATABASE MANAGEMENT ON DBMS TO customAdministrator
172172
GRANT TRANSACTION MANAGEMENT (*) ON DATABASE * TO customAdministrator
173173
----
174174

175-
The resulting role has privileges that include all DBMS privileges except creating, dropping, and modifying databases and aliases, as well as managing transactions.
175+
The resulting role has privileges that include all DBMS privileges except creating, dropping, and modifying databases, as well as managing transactions.
176176
Use the following query to list all privileges for the role `customAdministrator` as commands:
177177

178178
[source, cypher, role=noplay]
@@ -864,19 +864,19 @@ For more details about the syntax descriptions, see xref:database-administration
864864
GRANT [IMMUTABLE] CREATE DATABASE
865865
ON DBMS
866866
TO role[, ...]
867-
| Enables the specified roles to create new standard databases and aliases.
867+
| Enables the specified roles to create new standard databases.
868868

869869
| [source, syntax, role=noheader]
870870
GRANT [IMMUTABLE] DROP DATABASE
871871
ON DBMS
872872
TO role[, ...]
873-
| Enables the specified roles to delete standard databases and aliases.
873+
| Enables the specified roles to delete standard databases.
874874

875875
| [source, syntax, role=noheader]
876876
GRANT [IMMUTABLE] ALTER DATABASE
877877
ON DBMS
878878
TO role[, ...]
879-
| Enables the specified roles to modify standard databases and aliases.
879+
| Enables the specified roles to modify standard databases.
880880

881881
| [source, syntax, role=noheader]
882882
GRANT [IMMUTABLE] SET DATABASE ACCESS
@@ -906,20 +906,20 @@ GRANT COMPOSITE DATABASE MANAGEMENT
906906
GRANT [IMMUTABLE] DATABASE MANAGEMENT
907907
ON DBMS
908908
TO role[, ...]
909-
| Enables the specified roles to create, delete, and modify databases and aliases.
909+
| Enables the specified roles to create, delete, and modify databases.
910910

911911
|===
912912

913913

914-
The ability to create standard databases and aliases can be granted via the `CREATE DATABASE` privilege.
914+
The ability to create standard databases can be granted via the `CREATE DATABASE` privilege.
915915
See an example:
916916

917917
[source, cypher, role=noplay]
918918
----
919919
GRANT CREATE DATABASE ON DBMS TO databaseAdder
920920
----
921921

922-
The resulting role has privileges that only allow creating standard databases and aliases.
922+
The resulting role has privileges that only allow creating standard databases.
923923
List all privileges for the role `databaseAdder` as commands by using the following query:
924924

925925
[source, cypher, role=noplay]
@@ -959,15 +959,15 @@ SHOW ROLE compositeDatabaseAdder PRIVILEGES AS COMMANDS
959959
a|Rows: 1
960960
|===
961961

962-
The ability to delete standard databases and aliases can be granted via the `DROP DATABASE` privilege.
962+
The ability to delete standard databases can be granted via the `DROP DATABASE` privilege.
963963
See an example:
964964

965965
[source, cypher, role=noplay]
966966
----
967967
GRANT DROP DATABASE ON DBMS TO databaseDropper
968968
----
969969

970-
The resulting role has privileges that only allow deleting standard databases and aliases.
970+
The resulting role has privileges that only allow deleting standard databases.
971971
List all privileges for the role `databaseDropper` as commands by using the following query:
972972

973973
[source, cypher, role=noplay]
@@ -1007,15 +1007,15 @@ SHOW ROLE compositeDatabaseDropper PRIVILEGES AS COMMANDS
10071007
a|Rows: 1
10081008
|===
10091009

1010-
The ability to modify standard databases and aliases can be granted via the `ALTER DATABASE` privilege.
1010+
The ability to modify standard databases can be granted via the `ALTER DATABASE` privilege.
10111011
See an example:
10121012

10131013
[source, cypher, role=noplay]
10141014
----
10151015
GRANT ALTER DATABASE ON DBMS TO databaseModifier
10161016
----
10171017

1018-
The resulting role has privileges that only allow modifying standard databases and aliases.
1018+
The resulting role has privileges that only allow modifying standard databases.
10191019
List all privileges for the role `databaseModifier` as commands by using the following query:
10201020

10211021
[source, cypher, role=noplay]
@@ -1079,7 +1079,7 @@ SHOW ROLE compositeDatabaseManager PRIVILEGES AS COMMANDS
10791079
a|Rows: 1
10801080
|===
10811081

1082-
The ability to create, delete, and modify databases and aliases can be granted via the `DATABASE MANAGEMENT` privilege.
1082+
The ability to create, delete, and modify databases can be granted via the `DATABASE MANAGEMENT` privilege.
10831083
See an example:
10841084

10851085
[source, cypher, role=noplay]

modules/ROOT/pages/authentication-authorization/index.adoc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ For more information, see xref:authentication-authorization/password-and-user-re
2828
When triggered, Neo4j logs an error containing a timestamp and the message `failed to log in: too many failed attempts` in the _security.log_.
2929
====
3030
+
31-
For the relevant Cypher commands, see xref:authentication-authorization/manage-users.adoc#access-control-user-syntax[Manage users syntax], xref:authentication-authorization/manage-roles.adoc#access-control-role-syntax[Manage roles syntax], and xref:authentication-authorization/manage-privileges.adoc#access-control-privileges-syntax[Manage privileges syntax].
31+
For the relevant Cypher commands, see xref:authentication-authorization/manage-users.adoc#access-control-user-syntax[Manage users syntax], xref:authentication-authorization/manage-roles.adoc#access-control-role-syntax[Manage roles syntax], and xref:authentication-authorization/manage-privileges.adoc[Manage privileges syntax].
3232
Various scenarios that illustrate the use of the native auth provider are available in xref:tutorial/access-control.adoc[].
3333

3434
*User auth providers*::
@@ -47,7 +47,7 @@ The configuration steps are described in xref:authentication-authorization/sso-i
4747
*Custom-built plugin auth providers*::
4848
A plugin option for building custom integrations.
4949
It is recommended that this option is used as part of a custom delivery as negotiated with link:https://neo4j.com/professional-services/[Neo4j Professional Services].
50-
For more information, see link:{neo4j-docs-base-uri}/java-reference/{page-version}/extending-neo4j/security-plugins#extending-neo4j-security-plugins[Java Reference -> Authentication and authorization plugins].
50+
For more information, see link:{neo4j-docs-base-uri}/java-reference/{page-version}/extending-neo4j/security-plugins[Java Reference -> Authentication and authorization plugins].
5151

5252
*Kerberos authentication and single sign-on*::
5353
In addition to LDAP, native, and custom providers, Neo4j supports Kerberos for authentication and single sign-on.

modules/ROOT/pages/authentication-authorization/ldap-integration.adoc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ this LDAP group will fail authentication, even if their credentials are correct.
6565
|===
6666

6767
All settings are defined at server startup time in the default configuration file _xref:configuration/neo4j-conf.adoc[neo4j.conf]_ or can be modified at
68-
runtime using xref:procedures.adoc#procedure_dbms_setconfigvalue[`dbms.setConfigValue()`].
68+
runtime using xref:procedures.adoc#procedure_dbms_setConfigValue[`dbms.setConfigValue()`].
6969

7070

7171
[[auth-ldap-configure-provider]]
@@ -470,7 +470,7 @@ SET AUTH 'ldap' { SET ID 'cn=alice,ou=sales,dc=example,dc=com' }
470470
You can verify that your LDAP configuration is correct, and that the LDAP server responds, by using the LDAP command-line tool `ldapsearch`.
471471

472472
The `ldapsearch` command accepts the LDAP configuration setting values as input and verifies both the authentication (using the `simple` mechanism) and authorization of a user.
473-
See the https://docs.ldap.com/ldap-sdk/docs/tool-usages/ldapsearch.html[ldapsearch official documentation^] for more advanced usage and how to use SASL authentication mechanisms.
473+
See the link:https://docs.ldap.com/ldap-sdk/docs/tool-usages/ldapsearch.html[ldapsearch official documentation] for more advanced usage and how to use SASL authentication mechanisms.
474474

475475
. Verify the authentication and authorization of a user.
476476
For example, `john`.

modules/ROOT/pages/authentication-authorization/limitations.adoc

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -390,8 +390,10 @@ So due to the additional data access required by the security checks, this opera
390390

391391
[[property-based-access-control-limitations]]
392392
=== Property-based access control limitations
393-
Extra node-level security checks are necessary when adding security rules based on property rules, and these can have a significant performance impact.
394-
The following example shows how the database behaves when adding security rules to roles `restricted` and `unrestricted`:
393+
Extra node or relationship-level security checks are necessary when adding security rules based on property rules, and these can have a significant performance impact.
394+
395+
The following example shows how the database behaves when adding security rules for nodes to roles `restricted` and `unrestricted`.
396+
The same limitations apply to relationships.
395397

396398
[source, cypher]
397399
----

modules/ROOT/pages/authentication-authorization/manage-execute-permissions.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ The elevated privileges only apply within the procedure or user-defined function
1515
--
1616
The steps below assume that the procedure or user-defined function is already developed and installed.
1717

18-
Please refer to link:{neo4j-docs-base-uri}/java-reference/{page-version}/extending-neo4j#extending-neo4j[Java Reference -> Extending Neo4j] for a description of creating and using user-defined procedures and functions.
18+
Please refer to link:{neo4j-docs-base-uri}/java-reference/{page-version}/extending-neo4j/[Java Reference -> Extending Neo4j] for a description of creating and using user-defined procedures and functions.
1919
--
2020

2121

0 commit comments

Comments
 (0)