# コネクションプロファイル

単一の Workato オンプレミスエージェント (OPA) を複数のオンプレミスアプリケーションに接続できます。 コネクションプロファイル は、各アプリケーションを一意に識別し、接続に必要な設定情報を格納します。


# 基本情報

# コネクションプロファイルとは

コネクションプロファイルとは、オンプレミスアプリケーションを一意に識別し、オンプレミスアプリケーションに関する情報を格納するファイルです。プロファイルは、<INSTALL_HOME>/conf/config.yml にある設定ファイルに格納されています。

一般的な設定ファイルは以下のようになります。

database:
  profile1:   # Connection names can't contain 
    ...       # spaces or special characters
  profile2:   # But may contain underscores (_) and hyphens (-)
    ...

files:
  profile3:
    ...
  profile4:
    ...

jms:
  profile5:
    ...

ldap:
  profile6:
    ...

server:
  classpath:
    ...
  staging:
    ...

# 接続できるシステムの種類

config.yml ファイルには、以下の種類のシステムのプロファイルを格納できます。

インターネット接続が制限されているサーバーにインストールされた OPA に対して、プロキシサーバーを設定することもできます。

# 新しい設定の適用方法

デフォルトでは、config.yml が変更されるたびに OPA を再起動する必要があります。詳細については、オンプレミスエージェントの実行に関するガイドを参照してください。

オンプレミスエージェントで変更を自動的に適用できるようにするには、autoReload オプションを使用するよう、以下のコードを config.yml ファイルの最上部に追加します。

config:
  autoReload: true

このオプションが有効になっている場合、config.yml に対する変更は autoReload によって処理されます。OPA を手動で再起動する必要はありません。

autoReload とサーバープロファイル

autoReload は、サーバープロファイルに対する変更には適用されません。これらの変更を適用するには、手動で OPA を開始および停止します。


# データベースプロファイル

データベースコネクションプロファイルは、OPA がデータベースに接続するために使用する情報を提供します。コネクションプロファイルは config.ymldatabase セクションにあります。

OPA は、複数のデータベースへの接続に対応しています。接続したいデータベースごとに、database キー下にセクションを追加します。例 :

database:
  your-connection-name:         # Specify the connection name, ex: sales-database
    adapter: sqlserver
    host: localhost
    port: 1433
    database: sales
    username: sales_analyst
    password: secretPassword456

このセクションでは、以下の項目について説明します。

# プロファイルのプロパティ

データベースコネクションプロファイルには、以下のプロパティを含めることができます。

名前 種類 説明
adapter 任意 プロファイルが使用されるデータベースのタイプ。たとえば、プロファイルが PostgreSQL データベース用のものである場合、この値は postgresql になります。

OPA によりサポートされているデータベースでなければなりません。詳細については、設定例を参照してください。
url 任意 データベース用の JDBC 接続 URL。たとえば jdbc:postgresql://sales.database:5432/sales は PostgreSQL データベースに接続します。

注 : コネクションプロファイルの設定をすべて行うには、url または host 値を指定する必要があります。

詳細については、設定例を参照してください。
host 任意 データベースのホストアドレス。たとえば、localhost です。

注 : コネクションプロファイルの設定をすべて行うには、url または host 値を指定する必要があります。
port 任意 データベースのポート。選択したタイプのデータベースでデフォルトのポートを使用している場合は、このプロパティを省略できます。

たとえば PostgreSQL データベースは、デフォルトでポート 5432 を使用します。PostgreSQL でこのポートを使用する場合、port プロパティをコネクションプロファイルに追加する必要はありません。

デフォルトのポートは、サポートされているデータベースのセクションに記載されています。
database 任意 データベースの名前。例 : sales

注 : url プロパティが指定されている場合は、このプロパティを省略できます。
username 必須 データベースへの接続に使用されるデータベースユーザーのユーザー名。
password 必須 データベースユーザー (username) のパスワード。この値には、外部のシークレットマネージャーから取得したシークレットを使用できます。詳細については、設定例を参照してください。
driverClass 必須 JDBC 接続でのみ必要です。指定されたデータベースの JDBC ドライバークラスの完全修飾名。ドライバークラスは、エージェントの classpath プロパティで利用できる必要があります。
ssl 任意 SSL 接続を設定するためのオプション。SSL は以下のデータベースでサポートされています。
  • MySQL - バージョン5.7以降
  • PostgreSQL - バージョン11.x 以降
以下のプロパティを含みます。
名前 種類 説明
cert 必須 SSL 証明書に対するファイルパス。
trustAll 任意 true の場合、クライアントはすべての証明書チェーンを信頼します。自己署名のサーバー証明書がサポートされています。デフォルトは false です。
verifyHost 任意 true の場合、サーバー証明書に格納された名前がドメイン名と照合されます。デフォルトは false です。

# サポートされているデータベース

以下の表は、OPA が現在サポートしているデータベースに関する次の情報を示しています。

  • データベース名 : データベースの名前です。
  • アダプター : データベースの adapter 値です。この値は、OPA が接続しているデータベースの種類を指定するために使用されます。
  • デフォルトのポート : データベースのデフォルトの port です。
  • 注意事項 : データベースの設定時の注意事項です。
データベース名 アダプター デフォルトのポート 注意事項
Amazon Redshift redshift 5439
JDBC 互換データベース jdbc 以下が必要です。
  • コネクションプロファイル内の url および driverClass プロパティ
  • 設定済みの server プロファイル
詳細については、JDBC の例を参照してください。
Microsoft SQL Server sqlserver 1433
MySQL mysql 3306
Oracle oracle 1521 Oracle Service を使用している場合はurl プロパティが必要です。

SID を使用している場合は、adapter プロパティまたは url プロパティのいずれかを使用できます。

詳細については、Oracle の例を参照してください。
PostgreSQL postgresql 5432

# 設定例

ブロックをクリックすると例が表示されます。

adapter プロパティの使用

以下の例では、adapter プロパティを使用して Microsoft SQL Server と Amazon Redshift データベースに接続します。

database:
  sales:
    adapter: sqlserver
    host: localhost
    port: 1433
    database: sales
    username: sales_analyst
    password: secretPassword123
  operations:
    adapter: redshift
    host: localhost
    port: 5439
    database: customers
    username: cs_analyst
    password: secretPassword789
url プロパティの使用

以下の例では、url プロパティを使用して PostgreSQL データベースに接続します。

database:
  sales:
    url: jdbc:postgresql://sales.database:5432/sales
    username: sales_analyst
    password: secretPassword123
    ApplicationName: workato
password プロパティにシークレットを使用

以下の例では、外部シークレットマネージャーから取得したシークレットを使用して、データベースパスワードを提供します。詳細については、シークレットマネージャーの説明を参照してください。

database:
  sales_database:
    adapter: sqlserver
    host: localhost
    port: 1433
    database: test
    username: sales_user
    password: { secret: 'sales-db-password-password' }
Oracle データベースへの接続

Oracle データベースに接続する場合、 SID または サービス のいずれかに接続できます。

SID を使用する場合は、adapter プロパティまたは url プロパティのいずれかを使用できます。

サービス を使用する場合は、url プロパティを指定する必要があります。

database:
  erp:
    url: jdbc:oracle:thin:@localhost:1521/PROD
    username: admin
    password: SecretPassword456
JDBC 互換データベースへの接続

JDBC 互換データベースに接続するには、以下が必要です。

database:
  tpc:
    url: jdbc:presto://warehouse.intra:8889/tpch
    driverClass: com.facebook.presto.jdbc.PrestoDriver
    adapter: jdbc
    username: my_user

server:
  classpath: jdbc
SSL の有効化

以下の例では、PostgreSQL データベースに SSL を設定します。

: 現在、SSL 接続は MySQL (5.7以上) データベースおよび PostgreSQL (11以上) データベースでサポートされています。

database:
  sales:
    adapter: postgresql
    host: localhost
    port: 5432
    database: sales
    username: sales_analyst
    password: secretPassword123
    ssl:
      cert: /path/client_ca.crt
      trustAll: false
      verifyHost: true

# オンプレミスファイルプロファイル

オンプレミスファイルを使用するには、files セクションでファイルシステムプロファイルを定義する必要があります。 その際、相対パスの解決に使用される、ファイルアクセス用の base フォルダーを指定する必要があります。たとえば、C:\Documents\ ディレクトリ内の HR フォルダーは以下のように設定します。

files:
  hrfiles:
    base: "C:\\Documents\\HR"

別の例として、Desktop ディレクトリの employees フォルダーにアクセスできるようにするには、以下のようなファイルパスを指定します。

files:
  hrfiles:
    base: "/Users/me/Desktop/employees"

# SAP プロファイル

server セクションと sap セクションの両方に、SAP コネクションプロファイルを定義する必要があります。

サーバープロファイルで、lib_ext とは、SAP JCo コネクターライブラリを配置するディレクトリのことです。まだ作成されていない場合は、このディレクトリを OPA の root ディレクトリ下に作成し、SAP JCo コネクターライブラリをそこに配置します。lib_ext フォルダーには、すでに sap-connector-impl-X.X.jar が含まれているはずです。サーバープロファイルの詳細については、こちらをご確認ください。

SAP コネクターが対応しているコネクションのタイプには、直接接続メッセージサーバー接続の2つがあります。

SAP のデフォルトのポート

Workato の SAP コネクターでは、デフォルトで以下のポートを使用します。

  • SAP メッセージサーバー経由 : 36xx (xx は SAP のシステム番号)
  • SAP メッセージサーバーなし (SAP に対する直接呼び出し) : 33xx (SNC あり) および 48xx (SNC なし)

さらに、HTTP(s) インバウンド通信 (SAP からプロビジョニングされた REST OData サービス、SOAP WebServices などを使用する場合など) の場合は、ポートはデフォルトで8000 (HTTP) および44300 (HTTPs) になります。このポートが SAP でカスタムの方法で設定されている場合、ポート番号は SAP で以下の手順で確認できます。

  1. ICM モニタ ( SMICM ) トランザクションに移動します。
  2. [Goto] > [Services] の順に選択して、ICM で設定されたサービスと関連付けられたポートを表示します。

これらのポートがデフォルトと異なる場合は、Workato サポートまでお問い合わせください。

# SAP - 直接接続

以下に Direct コネクションタイプの例を示します。SAP システムがアプリケーションサーバーとして直接公開される場合は、このコネクションタイプを使用します。

server:
  classpath:
    - lib_ext

sap:
  # Direct connection to an ABAP application server
  sap_profile_1: # This is on-prem agent connection profile name
    network_connection:
      gateway_host: "xx.xx.xx.xx"
      system_number: "00"
      program_id: "WORKATO"  # Only needed if you are using IDocs. This can be omitted for connections that only use RFCs.
    user_logon:
      client: "800"
      language: "EN"
      user: "USERN"
      password: "PASSW"
パラメータ 説明 クリックして画像を拡大
gateway_host DNS 名または IP アドレスのいずれかになります。存在する場合、これは SAP ホストへの直接接続を示しています。xx.xx.xx.xx という形式になります。これは、直接接続する SAP アプリケーションサーバーの IP アドレスです。オンプレミス SAP アプリケーションサーバーへのログインに使用される、SAP Logon Pad に表示される可能性があります。 ホスト
system_number 2桁の SAP システム番号です。アプリケーションサーバーが受信リクエストをリッスンしている論理ポートを識別します。通常、TCP ポート 33XX で確認できます (XX はシステム番号)。 システム番号
program_id 任意。IDOC がレシピで使用されている場合にのみ必要になります。Tcode SM59 で Workato にリンクされている RFC 宛先に指定されたプログラム ID と同じです。指定されていない場合は、デフォルトで WORKATO が使用されます。 プログラム ID
client Workato への接続に使用される実際のクライアント番号。SAP Logon Pad でログインするときと同じものを使用します。必ず3桁の整数になります。 クライアント
language 任意。ログオン言語を示します。このプロパティが指定されていない場合は、ユーザーまたはシステムのデフォルト言語が使用されます。有効な値は、2文字の ISO 言語コードまたは1文字の SAP 言語コードです。 言語
user Workato にプロビジョニングされた SAP ユーザー。バックグラウンドユーザーを使用し、ダイアログプロパティを無効にすることが推奨されます。 ユーザー
password SAP ユーザーのパスワード。 パスワード

# SAP - メッセージサーバー接続

以下に messageserver コネクションタイプの例を示します。SAP システムがメッセージサーバーゲートウェイの背後にある場合は、このコネクションタイプを使用します。

server:
  classpath:
    - lib_ext

sap:
  # Message Server connection to an ABAP application server
  sap_profile_2: # This is on-prem agent connection profile name
    network_connection:
      message_server_host: "10.30.xx.xx"
      logon_group: "PUBLIC"
      system_id: "DEV"
      program_id: "WORKATO" # Only needed if you are using IDocs. This can be omitted for connections that only use RFCs.
    user_logon:
      client: "800"
      language: "EN"
      user: "USERN"
      password: "PASSW"
パラメータ 説明 クリックして画像を拡大
message_server_host xx.xx.xx.xx という形式のメッセージサーバーのホスト。これは、接続しているメッセージサーバーの IP アドレスです。 メッセージサーバーのホスト
logon_group (任意) アプリケーションサーバーの論理グループ名。SAP Tcode SMLG で確認できます。 グループ
system_id メッセージサーバーが属しているシステムのシステム ID。接続エラーが発生する場合は、SAP ノート52959を参照してください。
program_id 任意。IDOC がレシピで使用されている場合にのみ必要になります。Tcode SM59 で Workato にリンクされている RFC 宛先に指定されたプログラム ID と同じです。指定されていない場合は、デフォルトで WORKATO が使用されます。 プログラム ID
client Workato への接続に使用される実際のクライアント番号。SAP Logon Pad でログインするときと同じものを使用します。必ず3桁の整数になります。 クライアント
language 任意。ログオン言語を示します。このプロパティが指定されていない場合は、ユーザーまたはシステムのデフォルト言語が使用されます。有効な値は、2文字の ISO 言語コードまたは1文字の SAP 言語コードです。 言語
user Workato にプロビジョニングされた SAP ユーザー。バックグラウンドユーザーを使用し、ダイアログプロパティを無効にすることが推奨されます。 ユーザー
password SAP ユーザーのパスワード。 パスワード

# JMS プロファイル

jms セクションに、JMS コネクションプロファイルを定義する必要があります。JMS プロバイダーは、コネクションプロファイルの provider プロパティで指定されます。オンプレミスエージェントによって、以下の JMS プロバイダーがサポートされています。

メッセージングサービス プロバイダー
Amazon Simple Queue Service amazon-sqs または sqs
Apache ActiveMQ activemq
Azure Service Bus custom

# Amazon SQS

Amazon SQS に接続するには、以下の設定プロパティが必要です。

jms:
  MyAmazonProfile:
    provider: amazon-sqs
    region: <Your Amazon API region, eg 'us-east-2'>
    accessKey: <Your Amazon API access key>
    secretKey: <Your Amazon API secret>

メッセージを送信する前に、必ず SQS キューを作成する必要があります。

# Apache ActiveMQ

実行中の ActiveMQ ブローカーに接続するには、以下のようにブローカー URL を指定するだけです。

jms:
  MyActiveMQProfile:
    provider: activemq
    url: tcp://localhost:61616

ActiveMQ ブローカーをエージェントに組み込むことはできません。vm:// ブローカー接続の使用はサポートされていません。

# Azure Service Bus

Azure Service Bus では、カスタム JMS プロバイダーを使用します。Azure Service Bus に接続するには、以下の設定プロパティが必要です。

jms:
  azureServiceBus:
    provider: custom
    class: org.apache.qpid.jms.JmsConnectionFactory
    remoteURI: amqps://<host-name>.servicebus.windows.net
    username: <policy-name>
    password: "<primary-key>"

こちら (opens new window)から jar ファイルをダウンロードし、lib_ext フォルダーに展開します。

config.yml ファイルにクラスパスを追加します。クラスパスプロパティの詳細については、こちらをご確認ください。

server:
 classpath: lib_ext

# Apache Kafka プロファイル

kafka セクションに Kafka コネクションプロファイルを定義する必要があります。Kafka に接続するには、以下の設定プロパティが必要です。

kafka:
  MyKafkaProfile:
    ... connection properties ...

bootstrap.serversbatch_size など、任意の Kafka producer (opens new window) または consumer (opens new window) の設定プロパティを指定できます。

ただし、一部のプロパティは、オンプレミスエージェントにより上書きされ、設定できません。保護されたプロパティを再定義しようとすると、警告が表示されます。保護されたプロパティには、以下のようなものがあります。

プロパティ名 コメント
key.serializer StringSerializer のみがエージェントによってサポートされています。
value.serializer StringSerializer のみがエージェントによってサポートされています。
key.deserializer StringSerializer のみがエージェントによってサポートされています。
value.deserializer StringSerializer のみがエージェントによってサポートされています。
auto.offset.reset レシピによって定義されています。
enable.auto.commit 内部で定義されています。

Workato Agent では、以下 (Kafka 以外) の設定プロパティもサポートしています。

プロパティ名 説明
timeout 一般的な操作のタイムアウト値 (ミリ秒) です。
url プロトコルが kafka または kafka+ssl であるサーバー URL のカンマ区切りのリストです。
ssl.truststore Kafka への安全な接続を確保するために、PEM形式でエンコードされたトラストストアのインライン化を許可します。
ssl.keystore.key Kafka への安全な接続を確保するために、秘密鍵のインライン化を許可します。
ssl.keystore.cert Kafka への安全な接続を確保するために、クライアント証明書のインライン化を許可します。

SSL/TLS を使用して Kafka に接続するときに、上記の ssl.* オプションを使用できます。このオプションを使用すると、config.yml ファイル内に PEM 形式でエンコードされた証明書と秘密鍵を維持できます。たとえば、YAML と互換性のある複数行の構文を以下のように使用できます。

kafka:
  MyKafkaProfile:
    ssl.truststore:
    |
      -----BEGIN CERTIFICATE-----
      502mPNNAYkY4a7Zu84DLCXLFurEa4BhLBqLkzC6WdTrBN9z6Rp/svTIl6VgjSTP6
      .....
      -----END CERTIFICATE-----

パスワードで保護された秘密鍵はインライン化できないことに注意してください。


# Active Directory プロファイル

Active Directory コネクションプロファイルは、ldap セクションで定義する必要があります。プロファイルの例 :

ldap:
  active_directory_main:
    url:
      - ldap://acme1.ldap.com:389
      - ldaps://acme2.ldap.com:636
    username: Administrator
    password: foobar
    base: dc=acme,dc=com
    ssl:
      cert: /path/to/PEM-encoded-certificate-or-trusted-CA
      trustAll: true
プロパティ名 説明
url
必須
使用する LDAP サーバーの URL。URL は ldap://myserver.example.com:389 という形式でなければなりません。

SSL アクセスには、LDAPS プロトコルを使用します。URL は、同じ形式 (ldaps://myserver.example.com:636) になります。

フェイルオーバー機能が必要な場合は、複数の URL を指定できます。
username
必須
LDAP サーバーでの認証時に使用するユーザー名 (プリンシパル)。これは通常、管理者ユーザーの識別名になります。たとえば cn=Administrator、または単に Administrator などです。
password
必須
LDAP サーバーでの認証時に使用するパスワード (資格情報)。
base
任意
すべてのリクエストのベース DN。この属性が設定されている場合、LDAP 操作に対して指定される、または LDAP 操作から取得されるすべての識別名は、この LDAP パスに対して相対的になります。これにより、大規模な LDAP ツリーでの作業が大幅に簡素化されます。

ただし、ベースパスにアクセスしなければならない場合もあります。詳細については、「ベース LDAP パスへの参照の取得」を参照してください。
ssl
任意
cert PEM 形式でエンコードされた証明書または信頼される CA へのパス。
pem PEM 形式でエンコードされた証明書の全内容。
key 相互 SSL をセットアップするための秘密鍵。pem が指定されている場合は、必須です。
trustAll 自己署名証明書を有効にするには、true に設定します。

# HTTP プロファイル

http 設定セクションでは、以下のように内部 HTTPS リソースへのエージェントのアクセスを設定できます。

http:
  trustAll: true
  verifyHost: true

自己署名証明書を使用する内部 HTTPS リソースにアクセスできるようエージェントを設定できます。自己署名証明書を有効にするには、trustAll プロパティを true に設定します。

通常、サーバー証明書の共通名 (またはサブジェクト代替名) のフィールドはターゲットのホスト名と一致している必要があります。ホスト名が一致していないサーバー証明書をエージェントが受け入れるようにするには、verifyHost プロパティを false に設定して (デフォルトは true)、ホスト名の検証を無効にします。


# NTLM プロファイル

特定の HTTP リソースでは、NTLM 認証が必要です。この認証は、NTLM コネクションプロファイルを使用して実行できます。以下に、いくつかの NTLM プロファイルの例を示します。

ntlm:
  MyNtlmProfile:
    auth: "username:password@domain/workstation"
    base_url: "http://myntlmhost.com"
    cm_default_max_per_route: 15
    cm_max_total: 100
    verifyHost: true
    trustAll: false

  AnotherNtlmProfile:
    auth: "domain/workstation"
    username: "username"
    password: "password"
    base_url: "http://myntlmhost.com"
    cm_default_max_per_route: 15
    cm_max_total: 100
    verifyHost: true
    trustAll: false

以下のプロファイルプロパティがサポートされています。

プロパティ名 説明
auth NTLM 認証の完全な資格情報。これには、ユーザー名、パスワード、ドメイン、ワークステーションを含めることができます。

OPA バージョン2.4.7以降では、ユーザー名とパスワードに @/ などの特殊文字が含まれている場合、以下に示すようにユーザー名とパスワードを個別に設定できます。
username NTLM 認証のユーザー名。
(OPA バージョン2.4.7以降の場合のみ)
password NTLM 認証のパスワード。
(OPA バージョン2.4.7以降の場合のみ)
base_url NTLM リソースのベース URL。
cm_default_max_per_route 任意。 ルート/ホストごとの接続数を設定します (正数を指定すること、デフォルトは5)。
cm_max_total 任意。 接続の最大数を設定します (正数を指定すること、デフォルトは10)。
http_connect_timeout 任意。 接続のリクエスト時に使用するミリ秒単位のタイムアウト値 (正数を指定すること、デフォルトは10000)。
http_connection_request_timeout 任意。 接続が確立されるまでのミリ秒単位のタイムアウト値 (正数を指定すること、デフォルトは10000)。
http_socket_timeout 任意。 ソケットのミリ秒単位のタイムアウト値。データを待機するときのタイムアウト値、つまり2つの連続するデータパケット間の最大非アクティブ期間です (正数を指定すること、デフォルトは10000)。
verifyHost 任意。 SSL/TLS 接続に対してホスト名の検証を有効にするかどうかを指定します (デフォルトは true)。
trustAll 任意。 SSL/TLS 接続に対してすべての証明書を信頼するかどうかを指定します (デフォルトは false)。

NTLM 接続でサポートされている HTTP メソッドは、GETPOSTPUTPATCHDELETEHEAD です。


# コマンドラインスクリプトプロファイル

このプロファイルにより、ユーザーは OPA で任意のスクリプトまたはコマンドを実行できます。設定ファイルのスクリプト定義にはパラメータを指定できます。

アクションを宣言するときに、パラメータの値を指定する必要があります。

Unix でのプロファイルの例を以下に示します。

command_line_scripts:
  workday_reports:
    concurrency_limit: 3
    timeout: 30
    scripts:
     copy_file:
       name: Copy file
       command:
         - /bin/cp
         - '{{source_file}}'
         - '{{target_directory}}'
       parameters:
         - { name: source_file }
         - { name: target_directory }           

     append_file_to_another:
       name: Append file to another
       command:
         - bash
         - -c
         - cat {{source_file}} >> {{target_file}}
       parameters:
         # Parameter quoting
         - { name: source_file, quote: '"' }
         # Advanced parameter quoting
         - { name: target_file, quote: { start: '"', end: '"', quote: '"', escape_char: \ } }

     generate_report:
       name: Generate report
       command:
         - python
         - /home/user/script.py
         - --from
         - '{{from_date}}'
         # Conditional fragment
         - { value: --to, if: to_date }
         # Conditional fragment
         - { value: '{{to_date}}', if: to_date }
       parameters:
         - { name: from_date }
         - { name: to_date, schema: { optional: true, control_type: select, pick_list: [01/01/2018, 02/02/2018] } }

コマンドラインスクリプトのプロファイルは、config.yml の command_line_scripts セクションに配置されています。各プロファイルには複数のスクリプトを含めることができます。プロファイルの設定プロパティは以下のとおりです。

プロパティ名 説明
scripts スクリプトのハッシュ。各キーの値にはスクリプトプロファイルが含まれます。
concurrency_limit 任意。 同時に実行されるスクリプトの最大数。指定されない場合は、デフォルトの10になります。制限に達すると、リクエストはキューに入れられます。
timeout 任意。 各スクリプト実行の最大期間 (秒単位)。指定されない場合は、デフォルトの90秒になります。

ハッシュキーは、スクリプトプロファイルの一意の識別子として使用されます。スクリプトの設定プロパティは以下のとおりです。
プロパティ名 説明
name レシピ UI に表示されるスクリプトのわかりやすい名前です。
command コマンド呼び出しの配列。各項目の値では、Mustache (opens new window) テンプレートの変数を使用してパラメータの値を置換できます。
parameters 任意。 パラメータ配列 (デフォルトは空の配列)。

コマンド呼び出し要素の設定には文字列だけを指定できますが、以下のプロパティを含めることもできます。
プロパティ名 説明
value コマンド呼び出し要素の値。
if パラメータ名。パラメータ値が空の場合は、このコマンド呼び出し要素は考慮されません。

パラメータの設定プロパティは以下のとおりです。
プロパティ名 説明
name パラメータ名。
quote 任意。 パラメータの引用文字のルール (デフォルトではルールなし)。
schema 任意。 パラメータのスキーマ。

引用文字の設定には、1つの文字列のみを指定することも、または複数のプロパティを指定することもできます。プロパティは以下のとおりです。
プロパティ名 説明
start 開始の引用文字。
end 終了の引用文字。
quote パラメータ値内のエスケープされる引用文字。
escape_char エスケープ文字。

引用文字の設定に1つの文字列を使用する場合、その値は startend、および quote プロパティの値と見なされます。また escape_char プロパティの値は Unix では「\」、Windows では「""」に設定されます。


パラメータのスキーマ設定には、以下のようなプロパティを指定できます。
プロパティ名 説明
任意 任意。 パラメータのオプションのフラグ (デフォルトは false)。
label 任意。 レシピ UI に表示されるスクリプトのわかりやすい名前 (デフォルトでは、パラメータの名前)。
control_type 任意。 「text」または「select」。「select」の場合は、「pick_list」プロパティも定義する必要があります。デフォルトは「text」です。
pick_list 任意。 パラメータ値を選択するための値です。「control_type」プロパティの値が「select」に設定されている場合は、このプロパティを定義する必要があります。

# 拡張機能プロファイル

Java 拡張機能を使用するには、拡張機能プロファイルを定義する必要があります。jar ファイルが配置される場所の定義は server セクションで、また Java クラスの個々のプロファイルの作成は extensions セクションで行います。Java 拡張機能の設定の例を以下に示します。

server:
  classpath: ext

extensions:
  security:
    controllerClass: com.mycompany.onprem.SecurityExtension
    secret: HA63A3043AMMMM

server パラメータの設定プロパティは以下のとおりです。

プロパティ名 説明
classpath ユーザー定義のクラスの場所を指定します。

extensions プロファイルの設定プロパティは以下のとおりです。

プロパティ名 説明
controllerClass 拡張機能をマッピング先の Java クラスを OPA に通知するための必須フィールドです。
secret Java クラスで使用されるオプションの環境プロパティです。複数のプロパティを追加できます。

Java 拡張機能の作成方法の説明をご覧ください。


# サーバープロファイル

サーバープロファイルでは、OPA アセットがオンプレミスサーバーのどこに配置されるのかを定義します。サーバープロファイルは config.ymlserver セクションに配置されます。

server:
  classpath: lib_ext
  staging: staging

このセクションでは、以下の項目について説明します。

# プロファイルのプロパティ

サーバープロファイルには、以下のプロパティを含めることができます。

名前 種類 説明
classpath 必須 Java ドライバーまたはユーザー定義のクラスを格納するディレクトリを定義します。例 : jar ファイル または ドライバークラス

: これは、OPA インストールフォルダーの既存のサブディレクトリでなければなりません。
staging 必須 ** ターゲットシステムへの読み込み中に、一時的にデータを格納するステージングフォルダーを定義します。 : これは、OPA インストールフォルダーの既存のサブディレクトリでなければなりません。

指定しないままにすると、OPA はステージングフォルダーを内部で管理します。

ステージングフォルダーに格納されているファイルは、OPA によりターゲットシステムに読み込まれた後、自動的に削除されます。

** OPA バージョン2.9.3以前では必須です。バージョン2.10以降では任意です。

# 設定例

以下のディレクトリ構造を用いたプロファイルの設定例をいくつか見てみましょう。この例では、オンプレミスエージェントは /opt/workato-agent にインストールされます。

/opt
├── /workato_agent
    ├── /conf
    ├── /bin
    ├── /lib_ext
    ├── /staging

以下の例では、Java ドライバークラスまたはユーザー定義のクラスを格納する jdbc ディレクトリを定義します。

server:
  classpath: lib_ext

次に、staging プロパティの設定方法を説明します。このプロパティでは、OPA がターゲットシステムへの読み込み中にファイルを一時的に格納する場所を定義します。

たとえば、SQL Server の[Export query result] アクションを実行する場合、CSV 出力は /staging ディレクトリに一時的に格納され、ファイルが読み込まれた後に削除されます。

server:
  classpath: lib_ext
  staging: staging


Last updated: 2023/8/31 1:07:14