プロキシ (ランタイム) 構成
パラメータはJSONファイルに保存されます。API Caller Deployment Guide
名前 | 説明 | 型 | デフォルト | 必須 |
---|---|---|---|---|
server.port | プロキシコンポーネントがリッスンしているポート番号 | int | 8080 | |
server.log-activity | httpサーバーのトレースを有効にするかどうか、さらにデバッグする | boolean | false |
|
server.ssl.enabled | HTTP サーバでSSLを有効化するかどうか サポートプロトコル: TLSv1, TLSv1.1, TLSv1.2 | boolean | false | |
server.ssl.certificate | X509 PEM 形式サーバ証明書 | string | ||
server.ssl.private-key | X509 PEM 形式プライベートキー | string | ||
server.ssl.client-auth | クライアント認証を有効にするかどうか(none|request|required) | string | none | |
server.ssl.truststore.pems | HTTPクライアントトラストストアに追加するX509 PEM 形式証明書のリスト | JSON Array | ||
client.log-activity | httpクライアントトレースを有効にするかどうか、さらにデバッグする | boolean | false |
|
client.ssl.enabled | HTTP クライアントで利用されるHTTP クライアントでSSL SSLを有効にするかどうか サポートプロトコル: TLSv1, TLSv1.1, TLSv1.2 | boolean | true | |
client.ssl.trust-all | 3rd party エンドポイントのすべてのホストを信頼するかどうか | boolean | false | |
client.ssl.verify-host | api-callerコンポーネントのホスト検証を実行するかどうか | boolean | true | |
client.ssl.certificate | X509 PEM フォーマットクライアント証明書 | string | ||
client.ssl.private-key | PEM プライベートキー | string | ||
client.ssl.truststore.pems | X509 PEM 形式証明書のリストにHTTP client trust-storeの追加 | JSON Array | ||
iam.url | IAM サービスURL | string | ||
license.key | ライセンスキー | string | X | |
wait-for.enabled | "wait-for" 検証を有効にするかどうか | boolean | true | |
wait-for.wait-for-interval | IAM サービスの待機時間(ミリ秒) | long | 3000 | |
wait-for.retries | IAM サービスからのレスポンスを取得する最大リトライ数 | int | 5 | |
converter.codepage | プロキシとメインフレーム間のデータ通信のキャラクタエンコーディング | string | CP037 | |
database.host | サーバ接続のホスト名 | string | X | |
database.port | サーバ接続のポート番号 | int | 5432 | |
database.dbname | サーバ接続のデータベース名 | string | X | |
database.user | 認証のユーザアカウント | string | X | |
database.password | 認証のユーザパスワード | string | X | |
database.pool.max-size | クライアントがプールする最大接続数 | int | 5 | |
database.ssl.mode | DB クライアントSSL モードの設定mode (disable|allow|prefer|require|verify-ca|verify-full) | string | disable | |
database.ssl.certs | DB クライアントのtrust-storeをPEM形式の証明書で設定 | JSON Array | ||
flyway.enabled | flywayのサポートの有効化 | boolean | true | |
flyway.features.enable_date_time_migration_2.1 | date-time フィールドのデータ移行を有効にするかどうか | boolean | false | |
caller.http.pool.max-size | HTTPクライアントがプールする最大接続数 | int | 5 | |
caller.http.log-activity | http callerのクライアントトレースを有効にするかどうか、さらにデバッグする | boolean | false |
|
caller.http.ssl.enabled | HTTP callerで利用されるHTTP クライアントでSSL SSLを有効にするかどうか | boolean | true | |
caller.http.ssl.trust-all | 3rd party エンドポイントのすべてのホストを信頼するかどうか | boolean | false | |
caller.http.ssl.verify-host | 3rd party エンドポイントのホスト検証を実行するかどうか | boolean | true | |
caller.http.ssl.client-certificate | X509 PEM フォーマットクライアント証明書 | string | ||
caller.http.ssl.client-private-key | PEM プライベートキーに HTTP client trust-storeの追加 | string | ||
caller.http.ssl.truststore.pems | X509 PEM 形式証明書のリストにHTTP client trust-storeの追加 | JSON Array | ||
logging.level | ベースパッケージのログレベル | JSON object | ||
headers.propagation | 伝播するヘッダーを表すJSONオブジェクト | JSON Array |
|
|
headers.propagation.endpoint-pattern | エンドポイントIDと一致する必要がある正規表現(例: エンドポイントパターンを設定する場合、ヘッダーのみが伝播されません | string |
|
|
headers.propagation.whitelist | 伝播されるヘッダー名の正規表現のリスト (例: | string Array |
|
|
headers.propagation.blacklist | 無視されるヘッダー名の正規表現のリスト | string Array |
|
|
Config.json ファイルの例
Proxy Properties
{
"server": {
"port": 8080,
"ssl": {
"enabled": true,
"certificate": "-----BEGIN CERTIFICATE----- ... -----END CERTIFICATE-----",
"private-key": "-----BEGIN PRIVATE KEY----- ... -----END PRIVATE KEY-----",
"client-auth": "none",
"truststore":{
"pems": [
"-----BEGIN CERTIFICATE----- ... -----END CERTIFICATE-----",
"-----BEGIN CERTIFICATE----- ... -----END CERTIFICATE-----",
"-----BEGIN CERTIFICATE----- ... -----END CERTIFICATE-----"
]
}
}
},
"client": {
"log-activity": false,
"ssl": {
"enabled": true,
"trust-all": false,
"verify-host": true,
"certificate": "-----BEGIN CERTIFICATE----- ... -----END CERTIFICATE-----",
"private-key": "-----BEGIN PRIVATE KEY----- ... -----END PRIVATE KEY-----",
"truststore":{
"pems": [
"-----BEGIN CERTIFICATE----- ... -----END CERTIFICATE-----",
"-----BEGIN CERTIFICATE----- ... -----END CERTIFICATE-----",
"-----BEGIN CERTIFICATE----- ... -----END CERTIFICATE-----"
]
}
}
},
"iam": {
"url": "https://iam-url.com"
},
"license": {
"key": "license key provided by openlegacy"
},
"wait-for": {
"enabled": false,
"wait-for-interval": 3000,
"retries": 5
},
"database": {
"host": "my-postgres.db.com",
"port": "5432",
"dbname": "my-db",
"user": "username",
"password": "password",
"pool": {
"max-size": 5
},
"ssl": {
"mode": "require",
"certs": ["-----BEGIN CERTIFICATE-----zaSUK51MA0GCSqGSIb3DQnem9uv\nIt...----END CERTIFICATE-----"]
}
},
"flyway": {
"enabled": true
"features" : {
"enable_date_time_migration_2.1": true
}
},
"caller": {
"http": {
"pool": {
"max-size": 5
},
"log-activity": false,
"ssl": {
"enabled": true,
"trust-all": false,
"verify-host": true,
"client-certificate": "-----BEGIN CERTIFICATE----- ... -----END CERTIFICATE-----",
"client-private-key": "-----BEGIN PRIVATE KEY----- ... -----END PRIVATE KEY-----",
"truststore": {
"pems": [
"-----BEGIN CERTIFICATE----- ... -----END CERTIFICATE-----\n",
"-----BEGIN CERTIFICATE----- ... -----END CERTIFICATE-----\n",
"-----BEGIN CERTIFICATE----- ... -----END CERTIFICATE-----\n"
]
}
}
}
},
"logging": {
"level": {
"base.package": "log-level" (info,debug,trace, etc..)
}
},
"headers": {
"propagation": [
{
"endpoint-pattern": ".*",
"whitelist": [
".*"
]
}
]
}
}