コネクションプロファイル
単一の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ファイルには、次のシステムタイプのプロファイルを含めることができます:
- データベース
- オンプレミスファイルシステム
- SAP
- Java Messaging Service
- Apache Kafka
- Active Directory
- HTTPプロファイル
- NTLM
- コマンドラインスクリプト
- 拡張機能
- サーバー
インターネット接続が制限されたサーバーにインストールされたOPA用に、プロキシサーバーを設定することもできます。
新しい設定を適用するには
デフォルトでは、config.ymlに変更を加えるたびにOPAを再起動する必要があります。 詳細については、オンプレミスエージェントの実行ガイドを参照してください。
オンプレミスエージェントが変更を自動的に適用できるようにするには、autoReloadオプションを使用するためにconfig.ymlファイルの先頭に次を追加します
config:
autoReload: true有効にすると、config.ymlに加えられた変更はautoReloadによって取得されます。 OPAを手動で再起動する必要はありません。
AUTORELOADとサーバープロファイル
autoReloadは、サーバープロファイルに加えられた変更には適用されません。 これらの変更を適用するには、OPAを手動で起動および停止します。
データベースプロファイル
データベースコネクションプロファイルは、オンプレミスエージェント(OPA)がデータベースに接続するために使用する情報を提供します。 コネクションプロファイルは、config.ymlファイルのdatabaseセクションにあります。
JDBCドライバー要件
JDBCデータベースとのコネクションを確立するには、適切なJDBCドライバーをオンプレミスエージェントのlib_extフォルダにコピーします。 このドライバーがないと、オンプレミスエージェントはデータベースに接続できません。
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プロパティで利用可能である必要があります。 |
| pooled 任意 | データベースコネクションプーリングを設定するためのオプションです。これにより、再接続試行間の遅延が低減されます。 次のプロパティが含まれます:
|
| ssl 任意 | SSLコネクションを設定するためのオプション。 SSLは次のデータベースでサポートされています:
|
サポートされているデータベース
次の表には、OPAが現在サポートしているデータベースに関する情報が含まれます:
- データベース名: データベースの名前
- アダプター: データベースの
adapter値。 この値は、OPAが接続するデータベースの種類を指定するために使用されます。 - デフォルトポート: データベースのデフォルト
port。 - 注記: データベースの設定に関する注記。
| データベース名 | アダプター | デフォルトポート | メモ |
|---|---|---|---|
| Amazon Redshift | redshift | 5439 | |
| JDBC互換データベース | jdbc | 該当なし | コネクションプロファイルにurlおよびdriverClassプロパティと、設定済みのserverプロファイルが必要です。 詳細はJDBCの例を参照してください。 |
| Microsoft SQL Server | sqlserver | 1433 | |
| MySQL | mysql | 3306 | デフォルトでは、ドライバーは結果セットを行単位でストリーミングします。 バッファサイズを変更するには、defaultFetchSizeプロパティを使用します。 |
| Oracle | oracle | 1521 | Oracle Serviceを使用する場合、urlプロパティが必要です。 SIDを使用する場合、adapterまたはurlプロパティのいずれかを使用できます。 詳細はOracleの例を参照してください。 |
| PostgreSQL | postgresql | 5432 |
設定例
ブロックをクリックして例を表示します。
adapterプロパティの使用
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: secretPassword789urlプロパティの使用
urlプロパティの使用
次の例では、urlプロパティを使用してPostgreSQLデータベースに接続します。
database:
sales:
url: jdbc:postgresql://sales.database:5432/sales
username: sales_analyst
password: secretPassword123
ApplicationName: workatopasswordプロパティにシークレットを使用
passwordプロパティへのシークレットの使用
次の例では、外部シークレットマネージャーのシークレットを使用してデータベースパスワードを指定します。 詳細については、Secrets Managerを参照してください。
database:
sales_database:
adapter: sqlserver
host: localhost
port: 1433
database: test
username: sales_user
password: { secret: 'sales-db-password-password' }Oracleデータベースへの接続
JDBC互換データベースへの接続
JDBC互換データベースへの接続
JDBC互換データベースへのコネクションには、次が必要です:
- コネクションプロファイル内の
urlおよびdriverClassプロパティ - 設定済みの
serverプロファイル
database:
tpc:
url: jdbc:presto://warehouse.intra:8889/tpch
driverClass: com.facebook.presto.jdbc.PrestoDriver
adapter: jdbc
username: my_user
server:
classpath: jdbc特定のSQL Serverインスタンスへの接続
次の例は、同じサーバー上に複数のインスタンスがある場合に、特定のSQL Serverインスタンス用のJDBC urlを定義する方法を示しています。
注: ポート番号が不明な場合にのみ、インスタンス名を指定する必要があります。
database:
sales:
adapter: sqlserver
url: jdbc:sqlserver://[Server/Host]\[Instance]
username: user
password: Secret123SSLの有効化
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セクションでファイルシステムプロファイルを定義する必要があります。 相対パスの解決に使用されるため、ファイルアクセスのベースフォルダを指定する必要があります。 C:\Documents\ディレクトリ内のHRという名前のフォルダは、次のように設定されます:
files:
hrfiles:
base: "C:\\Documents\\HR"別の例として、Desktopディレクトリ内のemployeesフォルダへのアクセスを提供する場合、設定には次のようなファイルパスが含まれます:
files:
hrfiles:
base: "/Users/me/Desktop/employees"FTP(S)プロファイル
FTP(S)コネクションを設定するには、ftpセクションでプロファイルを定義する必要があります。 FTPサーバーのホストとポートを認証情報とともに指定する必要があります。 FTPサーバーへの単純なコネクションは、次のように設定されます:
ftp:
ftp_profile_1:
hostname: myftpserver.com
port: 21
user: username
password: secretpasswordオンプレミスエージェントのバージョン
FTP(S)コネクタを使用するには、OPA 25.0以降が必要です。
次のプロパティがサポートされています:
| プロパティ名 | 説明 |
|---|---|
| hostname 必須 | FTPサーバーのアドレス。 |
| port 任意 | FTPのデフォルトポートは21です。 |
| username 必須 | 接続するFTPサーバーのユーザー名。 |
| password 必須 | 接続するFTPサーバーへのパスワード認証情報。 |
| implicit 任意 | 明示的FTPSコネクションタイプ。 暗黙的なFTPSコネクションタイプの場合はtrueに設定します。 デフォルト値はfalseです。 |
| cert 任意 | .pem形式のX509サーバー証明書。 |
| trustAll 任意 | クライアントに任意の証明書チェーンを信頼させます。 自己署名サーバー証明書がサポートされています。 |
公開鍵/秘密鍵ペアとパスワード認証タイプの例を以下に示します:
ftp:
ftp_profile_key_protected:
hostname: myftpserver.com
port: 21
user: username
password: secretpassword
ssl:
implicit: false
cert: /path/to/PEM-encoded-certificate-or-trusted-CA
trustAll: true詳細については、FTPコネクタのドキュメントを参照してください。
SFTPプロファイル
SFTPコネクションを設定するには、sftpセクションでプロファイルを定義する必要があります。 SFTPサーバーのホストとポートを認証情報とともに指定する必要があります。 SFTPサーバーへの単純なコネクションは、次のように設定されます:
sftp:
sftp_profile_1:
host: mysftpserver.com
port: 22
user: username
password: secretpasswordオンプレミスエージェントのバージョン
SFTPコネクターを使用するには、OPA 24.0以降が必要です。
次のプロパティがサポートされています:
| プロパティ名 | 説明 |
|---|---|
| host 必須 | SFTPサーバーのアドレス。 |
| port 任意 | SFTPのデフォルトポートは22です。 |
| username 必須 | 接続先SFTPサーバーのユーザー名。 |
| password 条件付き | 接続先SFTPサーバーのパスワード認証情報。 ユーザー名/パスワード認証、またはパスワードと組み合わせた公開鍵/秘密鍵ペア認証の場合に必要です。 |
| private_key 条件付き | 秘密鍵へのパス。 パスワードの有無にかかわらず、公開鍵/秘密鍵ペア認証の場合に必要です。 |
| passphrase 任意 | 秘密鍵がパスワードで保護されている場合の任意のパスワード。 パスワードの有無にかかわらず、公開鍵/秘密鍵ペア認証に適用されます。 |
| host_key 任意 | SSH公開鍵のハッシュ。 Base64形式の公開鍵については、SFTPサーバー管理者にお問い合わせください。 |
| server_host_key 任意 | サーバーでSSH-RSAホストキーアルゴリズムを使用している場合に必要です。 SSH-RSA認証はクラウドSFTPコネクションではサポートされていません。 詳細はSSH-RSAサポートセクションを参照してください。 |
| PubkeyAcceptedAlgorithms 任意 | サーバーでSSH-RSAホストキーアルゴリズムを使用している場合に必要です。 必要なアルゴリズムを入力します。例: ssh-ed25519,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,rsa-sha2-512,rsa-sha2-256,ssh-rsa。 SSH-RSA認証はクラウドSFTPコネクションではサポートされていません。 詳細はSSH-RSAサポートセクションを参照してください。 |
公開鍵/秘密鍵ペアとパスワード認証タイプの例を以下に示します:
sftp:
sftp_profile_key_protected:
host: mysftpserver.com
port: 22
user: username
password: secretpassword
host_key_fingerprint: AAAAC3NzaC1lZDI1NTE5AAAAIDnkCeZXGyvQmXJ7VfbTD65NG2u0wcMA1gC5Um3tJ/2P
private_key: /path/to/id_rsa
passphrase: password #if private_key is password-protected詳細については、SFTPコネクタのドキュメントを参照してください。
SSH-RSAサポート
SSH-RSAはSHA-1に依存しており、現在のセキュリティ標準を満たさなくなっています。 Workatoは、SFTPへのクラウドコネクションでSSH-RSA認証をサポートしていません。 SSH-RSAを使用して認証する必要がある場合は、Workato OPAを使用してオンプレミスコネクションを作成するか、より強力なホストキーアルゴリズムを有効にするようサーバー管理者にお問い合わせください。
SMBプロファイル
共有ネットワーク場所へのSMBコネクションを設定するには、まずsmbセクションでプロファイルを定義する必要があります。 SMBのhost、port、share nameを認証情報とともに指定する必要があります。 次の例では、SMBへの単純なコネクションを設定します:
smb:
smb_profile_1:
host: some-host.amazonaws.com
port: 445
shareName: SampleSharedFolder
username: username
password: secretpassword
domain: optionalDomainNameオンプレミスエージェントのバージョン
SMBコネクターを使用するには、OPA 26.0以降が必要です。
次のプロパティがサポートされています:
| プロパティ名 | 説明 |
|---|---|
| host 必須 | SMBサーバーのアドレス。 |
| port 必須 | SMBのデフォルトポートは445です。 |
| shareName 必須 | 宛先の共有フォルダの名前。 |
| username 必須 | SMB共有にアクセスできるユーザー名。 |
| password 必須 | パスワード認証情報。 |
| domain 任意 | ユーザーの任意のドメイン名。 |
詳細については、SMBコネクタのドキュメントを参照してください。
SAPプロファイル
SAPコネクションプロファイルでは、serverセクションとsapセクションを一緒に定義する必要があります。
SAP JCOライブラリディレクトリ
Serverプロファイルでは、lib_extはSAP JCoコネクタライブラリが格納されるディレクトリです。 このディレクトリがまだ存在しない場合は、OPAルートディレクトリに作成し、その中にSAP JCoコネクタライブラリを配置します。 lib_extフォルダにはsap-connector-impl-X.X.jarを含める必要があります。 詳細については、Serverプロファイルセクションを参照してください。
SAPコネクターがサポートするコネクションタイプは、直接コネクションまたはMessage Serverコネクションの2つです。
SAPのデフォルトポート
SAPコネクターはデフォルトで次のポートを使用します:
- SAP Message Serverあり:
36xx。ここで、xxはSAPシステム番号です。 - SAP Message Serverなし(SAPへの直接呼び出しなど):SNCありの場合は
48xx、SNCなしの場合は33xxです。
SAPからプロビジョニングされたREST ODataサービスおよびSOAP webサービスを利用する場合など、HTTP(S)インバウンド通信では、ポートのデフォルトはHTTPが8000、HTTPSが44300です。 カスタムSAP設定で使用するポートを確認するには、次の手順を実行します:
ICM Monitor (SMICM) トランザクションに移動します。
Goto > Servicesを選択して、ICMで設定されたサービスと対応するポートを表示します。
これらのポートがデフォルトと異なる場合は、Workatoサポートにお問い合わせください。
SNCコネクション
Secure Network Communicationの設定の詳細については、SNC暗号化を参照してください。
IDoc受信ストラテジー
オンプレミスエージェント(OPA)v32.2以降では、OPAのconfig.ymlでopt.idoc_reception_strategy JCoオーバーライドを設定することで、IDoc受信ストラテジーを構成できます。 サポートされる値は次のとおりです:
LEGACY:デフォルト。 後方互換性のために保持されています。 OPAはデフォルトでLEGACYを引き続き使用するため、既存の動作を維持するために設定を変更する必要はありません。 例:opt.idoc_reception_strategy: LEGACYSAPIDOC:推奨。 マルチバイト文字をサポートします。 非Unicodeシステムでは、OPAをバージョン32.2にアップグレードした後、config.ymlでSAPIDOCを使用する必要があります。 例:opt.idoc_reception_strategy: SAPIDOC
jco_overrides:
opt.idoc_reception_strategy: 'LEGACY' # Value is case-insensitiveSAP - 直接コネクション
The following is an example of a Direct connection type. Use this connection type if the SAP system is directly exposed as an application server.
server:
classpath:
- lib_ext
sap:
sap_profile_1: # The on-prem agent connection profile name.
network_connection:
gateway_host: "xx.xx.xx.xx"
system_number: "XX"
program_id: "WORKATO"
metadata_refresh_interval: "10"
quality_of_protection: 3
partner_name: "p:CN=EH8, OU=I0021153688, OU=SAP Web AS, O=SAP Trust Community, C=DE"
user_logon:
client: "800"
language: "EN"
user: "USERN"
password: "PASSW"
jco_overrides:
jco.client.snc_myname: "Canonical name of the client certificate"| パラメーター(JCOコネクションプロパティ) | 説明 | 画像をクリックして拡大 |
|---|---|---|
| gateway_host (jco.client.ashost) required | The IP address or DNS name of the SAP application server you are directly connecting to. This can be seen on the SAP Logon Pad used to log in to your on-premise SAP application server. Accepts the following format: xx.xx.xx.xx. | ![]() |
| system_number (jco.client.sysnr) optional | The SAP system number that identifies the logical port on which the application server listens for incoming requests. Commonly found from TCP port 33XX, where XX is the system number. Defaults to 00. | ![]() |
| program_id (jco.server.progid) conditional | The program ID given to the RFC destination linked to Workato in the SM59 transaction. Required if you use IDocs. Not needed for connections that use only RFCs. | ![]() |
| metadata_refresh_interval optional | SAPからメタデータを更新する間隔(分単位、JCoキャッシュを除く)。 Defaults to 1440 minutes (24 hours). | |
| quality_of_protection (jco.client.snc_qop) optional | The quality of the protection level to apply. Enter one of the following numbers:
| |
| partner_name (jco.client.snc_partnername) conditional | The SNC partner found in the STRUST transaction under SNC SAPCryptolib. Must be prepended with p:. For example: p:CN=EH8, OU=I0021153688, OU=SAP Web AS, O=SAP Trust Community, C=DE. Required if you configure Secure Network Communication (SNC). | |
| client (jco.client.client) required | The three-digit client number used to connect to Workato. Use the same client you log in to with your SAP Logon Pad. | ![]() |
| language (jco.client.lang) optional | The SAP Logon language to use. Valid values include two-character ISO language codes or one-character SAP language codes. Defaults to the user or system's default language. | ![]() |
| user (jco.client.user) required | The SAP user provisioned for Workato. We recommend you use a background user and disable dialog properties. | ![]() |
| password (jco.client.passwd) required | The SAP user password. | ![]() |
| jco.client.snc_myname conditional | The canonical name of the client certificate to use for the connection. Required if you configure SNC. |
SAP - Message Serverコネクション
The following is an example of a Message Server connection type. Use this connection type when the SAP system is behind a message server gateway.
server:
classpath:
- lib_ext
sap:
sap_profile_2: # The on-prem agent connection profile name.
network_connection:
message_server_host: "xx.xx.xx.xx"
logon_group: "XXXXX"
system_id: "XXX"
program_id: "WORKATO"
metadata_refresh_interval: "10"
quality_of_protection: 3
partner_name: "p:CN=EH8, OU=I0021153688, OU=SAP Web AS, O=SAP Trust Community, C=DE"
user_logon:
client: "800"
language: "EN"
user: "USERN"
password: "PASSW"
jco_overrides:
jco.client.snc_myname: "Canonical name of the client certificate"
jco.client.msserv: "36<XX>"
jco.server.msserv: "36<XX>"| パラメーター(JCOコネクションプロパティ) | 説明 | 画像をクリックして拡大 |
|---|---|---|
| message_server_host (jco.client.mshost) required | The IP address or DNS name of the Message Server you are connecting to. Accepts the following format: xx.xx.xx.xx. | ![]() |
| logon_group (jco.client.group) optional | The logical group name of the application servers. Can be found in the SMLG transaction. Common default group names include PUBLIC or SPACE. | ![]() |
| system_id required | Message Serverが属するシステムのSystem ID。 Refer to SAP Note 52959 if you encounter a connection error. | |
| program_id (jco.server.progid) conditional | The program ID given to the RFC destination linked to Workato in the SM59 transaction. Required if you use IDocs. Not needed for connections that use only RFCs. | ![]() |
| metadata_refresh_interval optional | SAPからメタデータを更新する間隔(分単位、JCoキャッシュを除く)。 Defaults to 1440 minutes (24 hours). | |
| quality_of_protection (jco.client.snc_qop) optional | The quality of the protection level to apply. Enter one of the following numbers:
| |
| partner_name (jco.client.snc_partnername) conditional | The SNC partner found in the STRUST transaction under SNC SAPCryptolib. Must be prepended with p:. For example: p:CN=EH8, OU=I0021153688, OU=SAP Web AS, O=SAP Trust Community, C=DE. Required if you configure Secure Network Communication (SNC). | |
| client (jco.client.client) required | The three-digit client number used to connect to Workato. Use the same client you log in to with your SAP Logon Pad. | ![]() |
| language (jco.client.lang) optional | The SAP Logon language to use. Valid values include two-character ISO language codes or one-character SAP language codes. Defaults to the user or system's default language. | ![]() |
| user (jco.client.user) required | The SAP user provisioned for Workato. We recommend you use a background user and disable dialog properties. | ![]() |
| password (jco.client.passwd) required | The SAP user password. | ![]() |
| jco.client.snc_myname conditional | The canonical name of the client certificate to use for the connection. Required if you configure SNC. | |
| jco.client.msserv optional | The client port number. Can be found in the SMMS transaction. デフォルトの3600ポート番号を上書きします。 | |
| jco.server.msserv optional | The message server port number. Can be found in the SMMS transaction. デフォルトの3600ポート番号を上書きします。 |
JMSプロファイル
JMSコネクションプロファイルは、jmsセクションで定義する必要があります。 JMSプロバイダーは、コネクションプロファイルのproviderプロパティで指定します。 オンプレミスエージェントでは、次のJMSプロバイダーがサポートされています:
| メッセージングサービス | provider |
|---|---|
| Amazon Simple Queue Service | amazon-sqs or 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>Ensure your SQS queue exists before sending messages.
Apache ActiveMQ
実行中のActiveMQブローカーに接続するには、ブローカーURLを指定するだけです:
jms:
MyActiveMQProfile:
provider: activemq
url: tcp://localhost:61616The ActiveMQ broker can't be embedded in the agent. OPA doesn't support vm:// broker connections.
Azure Service Bus
Azure Service BusはカスタムJMSプロバイダーを使用します。 接続するには、次の設定プロパティを使用し、<HOST_NAME>、<POLICY_NAME>、および<PRIMARY_KEY>を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>"必要なJARファイルと依存関係をダウンロードし、lib_extフォルダに配置します。
config.ymlファイル内にclasspathを追加します。
server:
classpath: lib_extApache Kafkaプロファイル
Kafkaコネクションプロファイルは、kafkaセクションで定義する必要があります。 Kafkaに接続するには、次の設定プロパティが必要です:
kafka:
MyKafkaProfile:
... connection properties ...任意のKafkaproducerまたはconsumer設定プロパティを指定できます。例: bootstrap.serversまたはbatch_size。
ただし、一部のプロパティはオンプレミスエージェントによって上書きされるため、設定できません。 保護されたプロパティを再定義しようとすると、警告が表示されます。 これらの保護されたプロパティの例:
| プロパティ名 | コメント |
|---|---|
| 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エンコードされたtruststoreのインライン化を許可します |
| ssl.keystore.key | Kafkaへの安全なコネクションのために秘密鍵のインライン化を許可します |
| ssl.keystore.cert | Kafkaへの安全なコネクションのためにクライアント証明書のインライン化を許可します |
上記のssl.*オプションは、SSL/TLSを使用してKafkaに接続するときに使用でき、PEMエンコードされた証明書と秘密鍵をconfig.ymlファイル内に保持できます。 任意のYAML互換の複数行構文を使用できます。例:
kafka:
MyKafkaProfile:
ssl.truststore:
|
-----BEGIN CERTIFICATE-----
502mPNNAYkY4a7Zu84DLCXLFurEa4BhLBqLkzC6WdTrBN9z6Rp/svTIl6VgjSTP6
.....
-----END CERTIFICATE-----パスワードで保護された秘密鍵はインライン化できないことに注意してください。
Apache KafkaをWorkatoに接続するには、WorkatoのオンプレミスエージェントをKafkaクライアントとして設定する必要があります。
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 required | The URL of the LDAP server to use, in the format ldap://myserver.example.com:389.Use the LDAPS protocol, in the format ldaps://myserver.example.com:636, for SSL access.You can provide more than one URL for fail-over functionality. |
| username 必須 | LDAPサーバーで認証するときに使用するユーザー名(プリンシパル)。 This is usually the distinguished name of an admin user. For example, cn=Administrator or simply Administrator. |
| password 必須 | The password (credentials) to use when authenticating with the LDAP server. |
| base optional | すべてのリクエストのベースDN。 When configured, all distinguished names supplied to and received from LDAP operations are relative to this LDAP path, which can significantly simplify working with a large LDAP tree. |
| ssl 任意 | SSLコネクションを設定するためのオプション。 Contains the following properties:
|
HTTPプロファイル
http設定セクションを使用すると、内部HTTPSリソースへのエージェントアクセスを設定できます。 http config.ymlの例として、次のyamlファイルを参照してください:
http:
connectTimeout: 5000
keepAlive: true
ssl:
trustAll: false
verifyHost: true
cert:
|
-----BEGIN CERTIFICATE-----
MIIF3TCCBMWgAwIBAgIQBlp2+roj8DZRf7VwurC8BjANBgkqhkiG9w0BAQsFADBG
.....
-----END CERTIFICATE-----
key: /path/PEM-encoded-private-key
pem: /path/PEM-encoded-certificate-or-trusted-CAデフォルトでは、OPAは組み込みJREのルート認証局(CA)証明書セットを使用してHTTPSコネクションを検証します。 自己署名証明書を使用する内部HTTPSリソースでは、ssl.certプロパティをサーバー証明書のファイルパスまたはPEMエンコード値に設定して自己署名証明書を有効にすることで、エージェントがアクセスを許可するように設定できます。 または、ssl.trustAllプロパティをtrueに設定して、すべてのサーバー証明書を信頼できます。
エージェントは、セキュリティ強化のための相互TLS(mTLS)もサポートしています。 mTLSを使用する場合は、ssl.keyプロパティでクライアントの秘密鍵を指定し、ssl.pemプロパティでクライアント証明書を指定する必要があります。
サーバー証明書では通常、Common NameまたはSubject Alternate Nameがターゲットホスト名と一致する必要があります。 不一致が発生した場合は、ssl.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認証情報。 これには、ユーザー名、パスワード、ドメイン、ワークステーションを含めることができます。 Usernameとpasswordに @や/などの特殊文字が含まれる場合は、個別に設定できます。 |
| username | NTLM認証のユーザー名 |
| password | NTLM認証のパスワード |
| base_url | NTLMリソースのベースURL |
| cm_default_max_per_route | オプション。 ルート/ホストごとのコネクション数を設定します(正の数である必要があります。デフォルトは5) |
| cm_max_total | オプション。 最大コネクション数を設定します(正の数である必要があります。デフォルトは10) |
| http_connect_timeout | オプション。 The timeout in milliseconds used when requesting a connection (must be a positive number, default 10000) |
| http_connection_request_timeout | オプション。 The timeout in milliseconds until a connection is established (must be a positive number, default 10000) |
| http_socket_timeout | オプション。 The socket timeout in milliseconds, which is the timeout for waiting for data or, put differently, a maximum period inactivity between two consecutive data packets (must be a positive number, default 10000) |
| verifyHost | オプション。 SSL/TLSコネクションのホスト名検証を有効にするかどうかを指定します(デフォルトはtrue) |
| trustAll | オプション。 SSL/TLSコネクションですべての証明書を信頼するかどうかを指定します(デフォルトはfalse) |
NTLMコネクションでサポートされるHTTPメソッドは、GET、POST、PUT、PATCH、DELETE、HEADです。
コマンドラインスクリプトプロファイル
このプロファイルにより、ユーザーは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テンプレート変数を使用してパラメーター値を置換できます。 |
| parameters | オプション。 パラメーター配列(デフォルトは空の配列)。 |
コマンド呼び出し要素の設定は単なる文字列にすることもできますが、次のプロパティを含めることもできます:
| プロパティ名 | 説明 |
|---|---|
| value | コマンド呼び出し要素の値。 |
| if | パラメーター名。 パラメーター値が空の場合、このコマンド呼び出し要素は考慮されません。 |
パラメーター設定プロパティは次のとおりです:
| プロパティ名 | 説明 |
|---|---|
| name | パラメーター名。 |
| quote | オプション。 パラメーター引用符のルール(デフォルトはルールなし)。 |
| schema | オプション。 パラメータースキーマ。 |
quote設定は単なる文字列にすることも、プロパティを持つこともできます。 プロパティは次のとおりです:
| プロパティ名 | 説明 |
|---|---|
| start | 開始引用符文字。 |
| end | 終了引用符文字。 |
| quote | エスケープするパラメーター値内の引用符文字。 |
| escape_char | エスケープ文字。 |
quote設定が文字列の場合、その値はstart、end、quoteプロパティの値と見なされ、escape_charプロパティ値はUnixでは'\'、Windowsでは'""'に設定されます。
パラメータースキーマ設定には、次のプロパティを含めることができます:
| プロパティ名 | 説明 |
|---|---|
| optional | オプション。 パラメーターの任意フラグ(デフォルトは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: HA63A3043AMMMMserverパラメータの設定プロパティは次のとおりです:
| プロパティ名 | 説明 |
|---|---|
| classpath | ユーザー定義クラスの場所を指定します |
各extensionsプロファイル設定プロパティは次のとおりです:
| プロパティ名 | 説明 |
|---|---|
| controllerClass | 拡張機能をどのJavaクラスにマッピングするかをOPAに伝えるための必須フィールド。 |
| secret | Javaクラスで使用されるオプションのEnvironment properties。 複数のプロパティを追加できます。 |
Java拡張機能の作成方法を確認してください。
サーバープロファイル
サーバープロファイルは、OPAアセットがオンプレミスサーバー上のどこにあるかを定義します。 サーバープロファイルは、config.ymlのserverセクションにあります。
server:
classpath: lib_ext
staging: stagingこのセクションでは、次について説明します。
プロファイルプロパティ
サーバープロファイルには、次のプロパティを含めることができます:
| プロパティ名 | 説明 |
|---|---|
| classpath required | Javaドライバーまたはユーザー定義クラスを含むディレクトリを定義します。 For example, jar files or driver classes. Note: This must be a pre-existing subdirectory in the OPA installation folder. |
| staging optional | ターゲットシステムへのロード中にデータを一時的に保存するステージングフォルダを定義します。 Note: This must be a pre-existing subdirectory in the OPA installation folder. If left unspecified, OPA manages the staging folder internally. A file stored in the staging folder is automatically deleted after OPA finishes loading it to the target system. |
設定例
次のディレクトリ構造を使用して、プロファイル設定例をいくつか見てみましょう。 この例では、オンプレミスエージェントは/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最終更新日:








