このリファレンスガイドでは、 のarc.properties ファイルでサポートされているすべての設定オプションについて説明します。このファイルは組み込みJetty Web サーバーで使用されます。
アプリケーションにこれらのオプションを追加するには、テキストエディタで(インストールディレクトリにある)arc.properties ファイルを開き、適切な構文を追加してください。各オプションの例は以下にあります。
以下のオプションは、実装内に存在する任意の .properties ファイルで利用できます。
変数の使用
設定オプションで変数を指定できますが、次の点に留意する必要があります:
- プロパティの 値 には変数を使用できますが、プロパティの 名前 には使用できません。
- 変数名は大文字と小文字を区別します。
- システムプロパティは環境変数より優先されます。システムプロパティと環境変数のいずれにも変数が見つからない場合、デフォルトで空の文字列になります。
- 変数はネストできません。例えば、
cdata.warPath=${cdata.prefix${cdata.arc}}/webapp は許可されません。
次の例では、設定オプションで変数を使用して以下を行います:
- 初期化パラメータを定義する
- カスタムヘッダーを設定する
設定オプション
cdata.app.db
が使用するバックエンドデータベースへの接続文字列を定義します。
cdata.app.db=jdbc:cdata:mysql:server=localhost;port=3306;database=mysql;user=MyUserName;password=MyPassword
cdata.app.directory
がアプリケーションディレクトリとして使用するパスを定義します。
cdata.app.directory=/mnt/shared/arc
cdata.contextPath
Web アプリケーションがデプロイされるベースURL パスを定義します。これは、Web アプリケーションが処理するすべてのURL のプレフィックスとして機能します。
cdata.contextPath=/myapp
例えば、アプリケーションがwww.mydomain.com でホストされている場合、これによって受信エンドポイントがhttp://www.mydomain.com/myapp/pub/Receive.rsb になります。
cdata.encryption.key
マスターキーとして使用する、ランダムな文字列を含むAES キーファイル、またはPFX(PKCS#12)証明書ファイルへのパスを指定します。マスターキーは、 内のパスワードやシークレットなどの機密データを暗号化する暗号化キーを暗号化します。独自のキーを使用したい場合、またはキーをデフォルト以外の場所に保存したい場合にのみ必要です。
cdata.encryption.key=file:///var/opt/mykeys/mysecret.key
または、AES キーを使用している場合は、APP_KEY 環境変数を使用してキーファイルへのファイルパスを指定できます。
cdata.encryption.key.password
マスターキーに使用されているPFX ファイルのパスワードを定義します(cdata.encryption.key を使用して設定)。
cdata.encryption.key.password=MyS3curePa55w0rd
または、環境変数(例えば、ENCRYPTION_KEY_PASSWORD)を使用してパスワードを保存し、ここで参照することもできます。
cdata.encryption.key.password=${ENCRYPTION_KEY_PASSWORD}
cdata.fips.enabled
連邦情報処理標準(FIPS)モードを有効にするかどうかを制御するブールオプションです。FIPS は、セキュリティ、相互運用性、データ整合性を確保するために、コンピュータシステムで使用することを目的として米国連邦政府が策定した一連のセキュリティ標準です。
cdata.fips.enabled=true
カスタムヘッダーを、次の形式の連結された文字列のキー / 値のペアとして指定できます:key:value。
変数が含まれている場合、文字列は変数が最初に出現する箇所で分割され、変数が置換されます。変数を使用できるのは値のみです。
cdata.http.customHeaders=Product-Version:[${ARC_ISSUER} 2025];/api.rsc,Product-Issuer:${ARC_ISSUER}
cdata.http.gzipEnabled
HTTP レスポンスに対してGZIP 圧縮を有効にするかどうかを制御するブールオプションです。有効にすると、Jetty は帯域幅の使用量を削減するためにレスポンスを自動的に圧縮し、GZIP をサポートするクライアントのパフォーマンスを向上させます。
cdata.http.gzipEnabled=true
cdata.http.host
Jetty のHTTP サーバーがバインドするホスト / IP アドレスを設定します。これは、サーバーが受信HTTP リクエストをどのネットワークインターフェースでリッスンするかを決定します。
cdata.http.host=192.168.0.27
HTTP フォーム送信(application/x-www-form-urlencoded やmultipart/form-data リクエストなど)で許可される最大サイズ(バイト単位)を定義します。これは、フォーム経由のファイルアップロードを含む、フォーム送信で処理できるデータ量を制限します。
cdata.http.maxFormSize=2000000
cdata.http.port
が実行され、リッスンするHTTP ポートを設定します。
cdata.http.port=4080
cdata.http.proxyMode
Jetty がリバースプロキシまたはロードバランサーの背後で実行されているかどうかを決定するブールオプションです。有効にすると、Jetty はX-Forwarded-For やX-Forwarded-Proto などのヘッダーを含むプロキシ経由のリクエストを適切に処理します。
true の場合、Jetty はプロキシからのX-Forwarded-* ヘッダーを信頼します。
false の場合、Jetty はそれらのヘッダーを無視し、直接的なクライアント接続を想定します。
これにより、プロキシの背後で実行する際に、適切なクライアントIP の検出、HTTPS リダイレクト、ホスト解決が保証されます。
cdata.http.proxyMode=true
cdata.http.timeout
HTTP 接続のアイドルタイムアウトを制御します。この設定は、Jetty が接続を閉じる前に、その接続でのアクティビティをどれくらいの時間(ミリ秒単位)待機するかを決定します。
cdata.http.timeout=60000
cdata.initParameters
サーブレットの初期化パラメータを定義します。これらのパラメータは、実行時にサーブレットまたはフィルターによってアクセスされる連結された文字列のキー / 値のペアです。これらは、次の形式のカンマ区切りの文字列で設定する必要があります:key:value。
変数が含まれている場合、文字列は変数が最初に出現する箇所で分割され、変数が置換されます。変数を使用できるのは値のみです。
cdata.initParameters=ARCCLOUD_SERVICE_DEFINITION_PATH:${cdata.home}/service.json,APP_LOGS:${cdata.logdb}
cdata.loginService.ldap
これはcdata.loginService.ldap.* として解釈されます。これらのプロパティは、Jetty でLightweight Directory Access Protocol(LDAP)認証を設定するために使用され、ユーザーがLDAP サーバーに対して認証できるようにします。多数のプロパティがサポートされています。最低限、組み込みJetty サーバーでLDAP を使用する場合は、以下が必要です:
arc.properties の完全なLDAP セクションは、次のようになります:
その他の背景情報とサポートされるプロパティの完全な一覧については、LDAP 認証の設定を参照してください。
cdata.loginService.ldap.enabled
Jetty でLDAP 認証を有効にするかどうかを決定するブールです。このプロパティは通常、設定のニーズに応じて、LDAP ベースのログインサービス全体を有効または無効にするために使用されます。
cdata.loginService.ldap.enabled=true
cdata.requestLog.enabled
Jetty がHTTP リクエストをアクセスログに記録するかどうかを制御するブールです。有効にすると、Jetty はクライアントIP、リクエストメソッド、レスポンスステータス、レスポンス時間などの受信リクエストの詳細を記録します。
cdata.requestLog.enabled=true
ログをローテーションする際にJetty がログファイル名に付加する日付形式のパターンを指定します。これにより、ログを日単位、時間単位、またはカスタムの間隔で整理できます。
cdata.requestLog.filename とともに使用して、ローテーションするログファイル名を生成します。
- 形式はJava の
SimpleDateFormat パターンに従います。デフォルトはyyyy_MM_dd であり、これは毎日新しいログファイルを作成します。
- 空(
"")の場合、Jetty は日付ベースのローテーションを無効にします。
cdata.requestLog.filenameDateFormat=MM_dd_yyyy
cdata.requestLog.retainDays
Jetty が古いアクセスログを自動的に削除するまでに保持する日数を指定します。
- デフォルトは
31 で、これはJetty が31日間ログを保持してから削除することを意味します。
0 に設定すると、Jetty はログの保持を無効にします。つまり、ログは自動的に削除されません。
cdata.requestLog.filenameDateFormat とともに使用して、ローテーションするログファイルを管理します。
cdata.requestLog.retainDays=90
cdata.session.timeout
Jetty Web サーバーでユーザーのセッションが期限切れになるまでの最大の非アクティブ時間(秒単位)を定義します。
- デフォルトは
600 秒(10分)です。
0 以下の値は無視されます。
cdata.session.timeout=1200
cdata.tempDirectory
アプリケーションが使用するtemp ディレクトリの場所を定義します。
cdata.tempDirectory=/tmp/arc
cdata.tls.keyStoreType
Jetty がTLS/SSL 証明書に使用するキーストアの種類を指定します。キーストアには、Jetty がセキュアなHTTPS 接続を確立するために必要な秘密鍵とSSL 証明書が含まれます。
一般的な種類には、JKS、PKCS12、BKS、PEM があります。
cdata.tls.keyStoreType=PEM
cdata.tls.keyStorePassword
指定したキーストアのパスワードを定義します。
cdata.tls.keyStorePassword=Password123
cdata.tls.keyStorePath
Jetty がTLS/SSL 暗号化に使用するキーストアへのファイルパスを指定します。
cdata.tls.keyStorePath=/pathto/mykeystore.jks
cdata.tls.port
Jetty がTLS(HTTPS)接続に使用するポート番号を指定します。これは、プレーンなHTTP トラフィックに使用されるcdata.http.port のセキュアな代替手段です。
cdata.tls.port=443
cdata.tls.sniHostCheck
TLS/SSL 接続でのServer Name Indication(SNI)処理中に、Jetty がホスト名の検証を強制するかどうかを制御するブールです。
cdata.tls.sniHostCheck=true
cdata.warPath
arc.war ファイルが別の場所にある場合に、そのパスを設定します。
cdata.warPath=${cdata.home}/webapp/arc.war