1.12 Graph Server and Client 20.4.xから21.xへのアップグレード

Graph Server and Client 20.4.xから21.xバージョンにアップグレードする場合、データベースに新しいロールを作成し、pgx.confファイルからデータベースに認可ルールを移行する必要があることがあります。また、Graph Server and Clientリリース21.1からは、RPMファイルのインストール時にTLSが強制されます。

Graph Server and Clientリリース21.1の主な拡張機能の1つは、グラフのアクセス権限をpgx.confファイルからデータベースに移動することです。PL/SQLパッケージのインストール時に、デフォルトの権限を持つグラフ・ロールの新しいセットがデータベースに自動的に作成されます。デフォルト・マッピングの詳細は、付録の表B-1を参照してください。

この機能に準拠するには、次の項で説明するデータベース・アクションを実行する必要があります。

データベースでの追加のロールの作成

追加の権限を持つデータベース内のロールは、アップグレードの一環として21.x PL/SQLパッケージをデータベースにインストールするときに作成されます。Autonomous Databaseを使用している場合など、PL/SQLパッケージをインストールできない場合、デフォルトの権限セットを使用してデータベースにこれらのロールを手動で作成する方法の詳細は、ユーザーの認証および認可を参照してください。

認可ルールの移行

21.xにアップグレードする場合、pgx.confファイルに含まれるユーザーが追加したマッピングに対してデータベースGRANTSを実行する必要があります。

次の例では、認可ルールの移行が適用される場合と適用されない場合の様々なシナリオについて説明します。

例1-2 ユーザーが追加したマッピングのデータベースへの移行

pgx.confファイルのユーザーが追加した次のマッピングを移行するには:

...
"authorization": [{
  "pgx_role": "GRAPH_DEVELOPER",
  "pgx_permissions": [{
    "grant": "PGX_SESSION_ADD_PUBLISHED_GRAPH"
  },
...
21.xで使用されるデータベースで次のGRANT文を実行する必要があります。
GRANT PGX_SESSION_ADD_PUBLISHED_GRAPH TO GRAPH_DEVELOPER

例1-3 ユーザーが追加したファイル・システム認可ルールのデータベースへの移行

pgx.confファイルのユーザーが追加した次のファイル・システム認可ルールを移行するには:

...
"file_locations": [{
  "name": "my_hdfs_graph_data",
  "location": "hdfs:/data/graphs"
}],
"authorization": [{
  "pgx_role": "GRAPH_DEVELOPER",
  "pgx_permissions": [{
    "file_location": "my_hdfs_graph_data",
    "grant": "read"  
  },
...
21.xで使用されるデータベースで次のGRANT文を実行する必要があります。

CREATE OR REPLACE DIRECTORY my_hdfs_graph_data AS 'hdfs:/data/graphs'
GRANT READ ON DIRECTORY my_hdfs_graph_data TO GRAPH_DEVELOPER

例1-4 事前ロード済グラフに対するユーザーが追加したグラフ認可ルール

ノート:

事前ロード済グラフに対するユーザーが追加したグラフ認可ルールには移行は必要ありません

事前ロード済グラフに対するユーザーが追加したグラフ認可ルールは、引き続きpgx.confファイルで構成されるため、移行しないでください(次のコードを参照)。


"preload_graphs": [{
  "path": "/data/my-graph.json",
  "name": "global_graph"
}],
"authorization": [{
  "pgx_role": "GRAPH_DEVELOPER",
  "pgx_permissions": [{
    "preloaded_graph": "global_graph",
    "grant": "read"
  },
...

RPMのインストール時に自己署名TLS証明書が生成されるようになりました

Graph Server and Client 21.xでは、RPMのインストールで自己署名証明書が/etc/oracle/graphに生成されます。この証明書は、デフォルトでTLSを有効にするためにサーバーで使用されます。

セキュリティのベスト・プラクティスに従って、証明書へのアクセスはoraclegraphオペレーティング・システム・ユーザーに制限されます。これは、ユーザーがoraclegraphグループに含まれている場合でも、/opt/oracle/graph/pgx/bin/start-serverスクリプトを使用してグラフ・サーバーを起動できなくなることを意味します。かわりに、systemctlコマンドを使用してグラフ・サーバーのライフサイクルを管理します。次に例を示します。
sudo systemctl start pgx
次に示すように、証明書の所有権を変更する方法もあります。
sudo chown <youruser> /etc/oracle/graph/server_key.pem
TLSをオフにすると接続のセキュリティが低下するため、TLSをオフにすることはお薦めしません。ただし、その必要がある場合は、詳細についてグラフ・サーバーでのトランスポート層セキュリティ(TLS)の無効化を参照してください。