4.2.1 Privileges and Roles in Oracle Database

All database users that work with graphs require the CREATE SESSION privilege in the database.

Roles that are created for working with graphs are in Table 4-1. These roles are created when you install the PL/SQL package of the Oracle Graph Server and Client distribution on the target database.

Table 4-1 Privileges and Roles in Oracle Database

Role Operations enabled by this role Used By
PGX_SESSION_CREATE Create a new PGX session using the ServerInstance.createSession API. Graph developers and graph users
PGX_SERVER_GET_INFO Get status information on the PGX instance using the Admin API. Users who administer PGX
PGX_SERVER_MANAGE (includes PGX_SERVER_GET_INFO) Manage the PGX instance using the Admin API to stop or restart PGX. Users who administer PGX
PGX_SESSION_NEW_GRAPH Create a new graph in PGX by loading from the database using a config file, using the CREATE PROPERTY GRAPH statement in PGQL, creating a sub-graph from another graph, or using the GraphBuilder. Graph developers and graph users
PGX_SESSION_GET_PUBLISHED_GRAPH Query and view graphs published by another user to the public namespace. Graph developers and graph users
PGX_SESSION_ADD_PUBLISHED_GRAPH (includes PGX_SESSION_GET_PUBLISHED_GRAPH) Publish a graph to the public namespace. Graph developers
PGX_SESSION_COMPILE_ALGORITHM Compile an algorithm using the PGX Algorithm API. Graph developers
PGX_SESSION_READ_MODEL Load and use an ML model using PgxML. Graph developers
PGX_SESSION_MODIFY_MODEL Create, train, and store an ML model using PgxML. Graph developers

Few additional roles are also created to group multiple roles together. They provide a convenient way to grant multiple roles to database users. See Mapping Graph Server Roles to Default Privileges for more information on these additional roles.

You can create additional groups that are useful for your application, as described in Adding and Removing Roles and Defining Permissions for Individual Users.