ユーザー固有の接続
Version 22.0.8500
ユーザー固有の接続
Version 22.0.8500
デフォルトでは、API Server に設定されている標準接続がすべてのユーザによって使用されます。場合によっては、各ユーザーが基底のデータベースまたはソースへの独自の接続を持っていると便利です。これは通常、バックエンドサーバーで設定されたアクセス制御を利用するために行われます。
API Server は、ユーザー固有の接続をサポートします。この機能が有効になっていると、管理者だけがこの接続を利用してデータソースからメタデータを取得できます。そしてAPI Server は、各ユーザーが自分自身の接続を定義することを期待します。ユーザーが接続を定義していない場合は、API への呼び出しが成功する前に、定義するように求められます。
マスター接続を定義する
接続を作成する際、API Server 管理者は接続をマスター接続として設定することができます。管理者は標準の接続と同様にリソースとアクションをインポートできます。ただし、最初に個々の接続を登録していないユーザーには、それらのリソースをクエリするときにエラーが発生します。
ユーザー接続を登録する
API ユーザーは、最初に、マスター接続に対応するリソースにアクセスするために個々の接続を登録する必要があります。API ユーザーが自分の資格情報でログインできる登録URL は、マスター接続ごとに生成されます。
http://MyServer:MyPort/registerUserConnection.rst?conn=my_master_connection
このページでは、API ユーザーはデータソースに必要な情報を提供することで接続を確立できます。接続を保存した後、API ユーザーはAPI Server によって公開されたリソースをクエリできます。API Server は、リソースをユーザーが作成した個々の接続にマッピングします。
Note:ユーザーが接続を登録するためには、POST 権限が必要です。
テンプレート化された接続
API Server 管理者は、どの接続プロパティをユーザーが設定できるかを制御できます。これは、事前に定義されたプロパティとの接続をテンプレート化し、ユーザーが設定する必要があるプロパティのプレースホルダーを提供することによって行われます。 このようなテンプレートを指定するには、[UserConnectionTemplates]セクションのsettings.cfgに接続文字列を追加します。この接続文字列には、固定プロパティを含め、どのプロパティがユーザーによって定義可能かを’?’ を使って示します。 この接続文字列の形式は、プラットフォームとドライバーの仕様に一致する必要があります。
.NET
CData API Server の2021 バージョンから、settings.cfg ファイルはC:\ProgramData\CData\apiserver\
に配置されます。
バージョン2020以前では、settings.cfg ファイルはアプリケーションルートのapp_data サブフォルダに格納されます。2021より前のバージョンからアップグレードされたインストールでは、引き続きこの場所が使用されます。デフォルトはC:\Program Files\CData\CData API Server\www\app_data\
です。
[UserConnectionTemplates]
MyMasterSQLConnection = "Data Source=localhost;Initial Catalog=Northwind;User ID=?;Password=?;"
Java
Java 版では、settings.cfg はデータディレクトリに配置されています。Windows では、C:\ProgramData\CData\
に配置されていますが、Unix およびMac では~/cdata
にあります。
[UserConnectionTemplates]
MyMasterSQLConnection = "jdbc:sqlserver://localhost:1433;Database=Northwind;user=?;password=?;"