OpenLM SLM と Identity Service の SSL 設定
OpenLM SLM と Identity Service v21 以降の SSL 接続を設定するためのクイックガイドです。
重要:
- SLM で使用する証明書は、OpenLM SLM に接続するコンポーネントが動作するマシンの Trusted Certificate Store にもインストールしておく必要があります。
- サーバーで SSL を有効にしたら、接続するすべてのコンポーネントでホスト名/IP を HTTPS プロトコルに更新する必要があります。SLM の設定と同様に、ホスト指定には正確な FQDN を使用してください。
- スクリーンショットでは、説明のためだけに自己署名証明書を使用しています。本番環境では、信頼された認証局 (CA) が署名した証明書を使用してください。自己署名証明書はサポートされていません。システム要件を参照してください。
Identity Service の SSL 設定
C:\Program Files\OpenLM\OpenLM Identity Service\SecurityService\certに移動し、認証局 (CA) のデジタル署名付き証明書をここに配置します。
注意! 既存の証明書は削除しないでください!C:\Program Files\OpenLM\OpenLM Identity Service\SecurityServiceにある appsettings.json ファイルを、管理者権限で任意のテキストエディタで開きます。- Settings ノードを見つけ、"IssuerUri" パラメータを HTTP から HTTPS に変更します:
},
"Settings": {
"UseDb": true,
"IssuerUri": "https://FQDN:5000",
"DbType": "MariaDB"
},
- Kestrel node を編集します。証明書の情報(証明書のパスとパスワード)を設定し、URL パラメータを HTTP から HTTPS に変更します。デフォルトでは Identity Service はポート 5000(HTTP)とポート 5001 で待ち受けます。この変更後、ポート 5000 のエンドポイントは HTTPS と設定した証明書を使用します:
},
"Kestrel": {
"Endpoints": {
"Http": {
"Url": "https://FQDN:5000",
"Certificate": {
"Path": "./cert/cert.pfx",
"Password": "Cert Password"
}
},
"Https": {
"Url": "http://*:5001"
}
}
},
- Path - 証明書ファイルへのパスです。サンプルのように、スラッシュを使った相対パスを使用できます。Windows の絶対パスを使う場合は、各バックスラッシュをエスケープします(例:
C:\\Certs\\cert.pfx)。 - エンドポイント名
HttpとHttpsはそのままにします。名前はラベルにすぎず、この変更後はHttpという名前のエンドポイントがポート 5000 で HTTPS を提供します。 - Password - 証明書の秘密鍵のパスワードです。
- Certificate Name - 証明書名は 'cert.pfx' にしてください。
注: 中括弧 が常に正しく閉じられていることを確認してください。
-
変更を保存します。
-
Identity Service を再起動します:

- SSL 接続が成功しているかを確認するには、Identity Service UI を開き、アドレスバーに新しいアドレス (HTTPS) を入力してページを更新します。下図の "Lock" アイコンをクリックしてください:

OpenLM SLM の SSL 設定
-
C:\Program Files\OpenLM\OpenLM Server\binに移動し、"Cert" というフォルダを作成して、認証局 (CA) のデジタル署名付き証明書をこのフォルダに貼り付けます。 -
C:\Program Files\OpenLM\OpenLM Server\binにある appsettings.json を管理者権限でテキストエディタで開きます。 -
Kestrel ノードの設定を見つけて編集し、Kestrel エンドポイントの URL(EasyAdmin のフルパス)を更新します:
https://FQDN:port
},
"Kestrel": {
"Endpoints": {
"Http": {
"Url": "https://FQDN:5015"
},
- Certificates ノードを見つけて編集します。次の情報を指定します:
- Path - 証明書ファイルへのパスです。Windows のパスでは、各バックスラッシュをエスケープします(例:
C:\\Certs\\cert.pfx)。 - Password - 証明書の秘密鍵のパスワードです。
注: 中括弧 が常に正しく閉じられていることを確認してください。
},
"Certificates": {
"Default": {
"Path": "./cert/cert.pfx",
"Password": "12345"
}
},
- "Auth" ノードを見つけ、"Authority" 行を更新した Identity Service URL (HTTPS) に変更します。
},
"Auth": {
"EnableSecurity": true,
"Authority": "https://hostname:5000",
"Audience": "openlm.server.api",
"AuthProvider": "",
"ClientId": "openlm.server.client",
"ClientSecret": "<generated by Identity Service>",
"ClientScope": "openlm.cloud.scope openlm.ugs.read.scope IdentityServerApi openlm.dss.scope openlm.etlmanager.scope",
"TokenEndpoint": "/connect/token"
}
}
-
変更を保存します (Ctrl+S)。
-
Identity Service Settings で宣言した OpenLM SLM の URL を変更するタイミングです。Identity Service→Settings→Security Configuration タブにログインし、更新後の OpenLM SLM アドレス (HTTPS) を設定して Save をクリックします:

- OpenLM Server サービスを再起動します。

- 接続を確認するには、アドレスバーに更新後の EasyAdmin アドレスを入力します:
https://FQDN:port
証明書を更新または置き換える
証明書の有効期限が切れたら、HTTPS を提供する各コンポーネント(Identity Service、OpenLM SLM、DSS)で証明書を置き換えます。URL は変わりません。変更するのは証明書ファイルと、変わった場合はそのパスワードだけです。
始める前に:
- 新しい証明書を、秘密キーを含む
.pfxファイルとして入手し、パスワードを控えます。これらのコンポーネントは、Windows の証明書ストアではなくファイルから証明書を読み込みます。 - 新しい証明書、またはそれを発行した証明機関を、HTTPS で OpenLM に接続するすべてのマシン(DSA、Broker、ワークステーションのマシンを含む)の信頼された証明書ストアにインストールします。Linux 上の Broker の場合は、Java キーストアにもインポートします。証明書を信頼する を参照してください。
次の順序で証明書を置き換えます。
- Identity Service: 新しい
.pfxファイルをC:\Program Files\OpenLM\OpenLM Identity Service\SecurityService\certにコピーします。ファイル名またはパスワードが以前と異なる場合は、appsettings.jsonの Kestrel → Endpoints → Http → Certificate にある Path と Password を更新します。SigningCredential は変更しないでください。これは Identity Service がトークンの署名に使用する証明書で、HTTPS の証明書ではありません。Identity Service を再起動します。 - OpenLM SLM: 新しい
.pfxファイルをC:\Program Files\OpenLM\OpenLM Server\bin\Certにコピーします。ファイル名またはパスワードが異なる場合は、appsettings.jsonの Kestrel → Certificates → Default にある Path と Password を更新します。OpenLM Server サービスを再起動します。 - DSS: DSS UI で SSL トグルをオンのままにし、DSS & DSA SSL 構成 と同様に新しい証明書のパスとパスワードを入力します。これらの設定は、DSS インストールフォルダーの
kestrel.configにCertFileNameとCertPasswordとして保存されます。DSS サービスを再起動します。
DSA、Broker、Workstation Agent には専用の証明書は不要です。新しい証明書を信頼するだけで済みます。
結果を確認するには、EasyAdmin、Identity Service UI、DSS UI を HTTPS で開き、ブラウザーの鍵アイコンを選択して証明書の有効期限を確認します。
OpenLM SLM の appsettings.json の Kestrel → Endpoints → Http にある Url は、https://FQDN:5015 のような完全なアドレスのままにしてください。空の場合や * を含む場合、OpenLM SLM は起動時に Kestrel セクションを書き直し、認識しない設定を削除します。
HTTPS リクエストのリダイレクトを有効にする(任意)
対応バージョン: OpenLM SLM 24.1+
OpenLM Software License Management (SLM) v24.1 以降を新規インストールまたはアップグレードすると、appsettings.json(既定のパス: C:\Program Files\OpenLM\OpenLM Server\bin)に追加のパラメーターが表示されます。このパラメーターは、受信した HTTP リクエストを HTTPS へ自動的にリダイレクトするかどうかを制御します。
"HTTPSRequestsRedirectionEnabled": false
既定では、リダイレクトはオフ(false)です。オンにすると、HTTP エンドポイントに届いたリクエストはすべて HTTPS エンドポイントへリダイレクト(HTTP 301/302)されます。
HTTPS リダイレクトを有効にする
appsettings.jsonを開きます(管理者権限が必要です)。- パラメーターの値を次のように変更します。
"HTTPSRequestsRedirectionEnabled": true,
Kestrel > Endpointsノードに HTTPS の Kestrel エンドポイントを追加(または確認)します。例:"Kestrel": {"Endpoints": {"Http": {"Url": "http://*:5015"},"Https": {"Url": "https://FQDN:5443","Certificate": {"Path": "./cert/cert.pfx","Password": "<certificate-password>"}}}}- HTTP ポートとは別の HTTPS ポートを選び、他のサービスが使用していないことを確認します(例: 443、8443、5443)。ファイアウォール規則に合い、クライアントから到達できる空きポートであれば、どれでも使用できます。
- 証明書ファイル(
cert.pfx)をC:\Program Files\OpenLM\OpenLM Server\bin\Cert(または指定したパス)に配置し、パスワードを確認します。 - ファイルを保存し、OpenLM Server サービスを再起動します。
HTTPS リダイレクトを無効にする
自動リダイレクトを無効にする必要がある場合は、次の手順を実行します。
- パラメーターを次の値に戻します。
"HTTPSRequestsRedirectionEnabled": false,
- (任意)以前に追加した
Httpsエンドポイントのブロックを削除します。Httpエンドポイントは必ず残してください。最小構成の有効なKestrelセクションの例:"Kestrel": {"Endpoints": {"Http": {"Url": "http://*:5015"}}} - OpenLM Server サービスを再起動します。
重要な注意事項
Httpエンドポイントは削除しないでください。 これがないとサーバーが起動しません。- HTTPS とリダイレクトを有効にしている場合でも、
Httpエンドポイントを残します。 - リダイレクトを有効にすると、
http://を使うクライアントは自動的にリダイレクトされます。それでも、各コンポーネントの構成はhttps://の URL を直接使うように更新してください。 - Identity Service の URL(Authority)は、このガイドの前半で示したとおり HTTPS のままにしておきます。
- ファイアウォール / リバースプロキシ: 選択した HTTPS ポートを開放し、HTTPS トラフィックを正しく転送するようにロードバランサーの規則を調整します。
確認
- HTTP の URL(例:
http://FQDN:5015)にアクセスします。HTTPS の URL へ自動的にリダイレクトされます。 - ブラウザーに鍵アイコン(信頼された証明書)が表示されることを確認します。表示されない場合は、Windows の証明書ストアで証明書チェーンを確認し、中間証明書とルート証明書があることを確かめます。
- OpenLM SLM のログで、HTTPS ポートや証明書に関する Kestrel のバインドエラーがないかを確認します。
トラブルシューティング
| 症状 | 考えられる原因 | 対処 |
|---|---|---|
| サービスが起動しない | Http エンドポイントがない | Kestrel > Endpoints に Http エンドポイントを追加し直します。 |
| ブラウザーがリダイレクトされない | HTTPSRequestsRedirectionEnabled が false のまま | 値が保存されていることを確認し、サービスを再起動します。 |
| HTTPS ポート使用中のエラー | 他のサービスとのポートの競合 | 別の空きポートを選び、構成を更新して再起動します。 |
| 証明書を置き換えた後もブラウザーに古い証明書が表示される | サービスが再起動されていない、または Path が古いファイルを指している | Path と Password を確認してから、サービスを再起動します。 |
| 証明書エラー / 信頼されていない | CA の信頼がない自己署名証明書を使用している | クライアントマシンに証明書チェーンをインストールするか、CA が署名した証明書を取得します。 |
| リダイレクト後に 404 | Https の URL が誤っている、またはリバースプロキシの設定ミス | Https エンドポイントの URL とプロキシの転送規則を確認します。 |
ドキュメントチームは、大規模言語モデルを使ってこのページを下書きすることがあります。公開前に、テクニカルライターがすべてのページをレビューし、製品と照らし合わせて検証します。最終的な判断は人間が行います。