![]() |
要件に合わせて各パラメータの値を編集するようにしてください。実装は、ThingWorx がホストされている場所、組織のセキュリティポリシー、フェデレーションの CAS など、いくつかの要因によって異なる場合があります。次のテーブルに示す情報をガイダンスとして使用して、さまざまなパラメータの値を設定します。
|
パラメータ
|
説明
|
値
|
||
---|---|---|---|---|
clientBaseUrl
|
ThingWorx サーバーインスタンスの URL を指定します。
これは ThingWorx サーバーの完全修飾ドメイン名 (FQDN) に設定します。
高可用性 (HA) 環境で動作するように ThingWorx を設定している場合、ロードバランサーのホストとポートを指定します。
|
http://<ThingWorx-FQDN>:<port-number>/Thingworx
または
ThingWorx Flow では、https://<ThingWorx Flow Nginx ホスト名>:<ThingWorx Flow Nginx ポート番号>/Thingworx
または
高可用性環境では、https://<ロードバランサーのホスト名>:<ロードバランサーのポート番号>/Thingworx
|
||
idpMetadataFilePath
|
IdP メタデータファイルの絶対ファイルパスの場所を指定します。
|
/ThingworxPlatform/ssoSecurityConfig/sso-idp-metadata.xml
|
||
metadataEntityId
|
サービスプロバイダ接続のエンティティ ID を指定します。
• CAS として PingFederate を使用: サービスプロバイダの接続を設定するときに選択した一意の ID を使用します。
|
-
|
||
metadataEntityBaseUrl
|
ThingWorx サーバーの完全修飾ドメイン名を指定します。
高可用性 (HA) 環境で動作するように ThingWorx を設定している場合、ロードバランサーのホストとポートを指定します。
|
http://<ThingWorx-FQDN>:<port-number>/Thingworx
または
ThingWorx Flow では、https://<ThingWorx Flow Nginx ホスト名>:<ThingWorx Flow Nginx ポート番号>/Thingworx
または
高可用性環境では、https://<ロードバランサーのホスト名>:<ロードバランサーのポート番号>/Thingworx
|
||
webSSOProfileConsumerResponseSkew
|
SAML 2.0 WebSSO Assertion Consumer 応答スキュー公差を指定します。
この値を設定するときは、ユーザー個別のセキュリティ要件と企業ネットワークの遅延を考慮してください。
この設定を使用して、CAS から ThingWorx にログインリクエスト応答が返されるまで待つことができる時間の長さ (秒) を設定します。ログインリクエスト応答が返されるまでこの値よりも長い時間がかかる場合、ログイン試行は失敗します。
スキュー公差は、システムクロック間で想定される差を原因として、受信者が許容する応答有効期間の偏差です。関連する各システムのクロックが正しく同期されていることを確認して、スキューの影響を最小限に抑えることが最良事例です。
|
300
|
||
webSSOProfileConsumerReleaseDOM
|
認証が完了した後にセキュリティフレームワークが SAML アサーションを保持するかどうかを決定します。
False に設定すると、認証が完了した後も SAML アサーションが保持されます。
|
true
|
||
webSSOProfileResponseSkew
|
SAML 2.0 Web SSO プロファイル応答スキュー公差を指定します。
この値を設定するときは、ユーザー個別のセキュリティ要件と企業ネットワークの遅延を考慮してください。
スキュー公差は、システムクロック間で想定される差を原因として、受信者が許容する応答有効期間の偏差です。関連する各システムのクロックが正しく同期されていることを確認して、スキューの影響を最小限に抑えることが最良事例です。
|
300
|
||
retriggerOnScopesRemoval
|
必要な範囲のリストが変更され、更新する必要があるかどうかを指定します。
値が true に設定された場合、必要な範囲のリストから範囲が追加または除去されたことを示します。
値が false に設定された場合、必要な範囲のリストに範囲が追加されたことを示します。
|
true
|
||
samlAssertionUserNameAttributeName
|
ログイン時に ThingWorx ユーザーのユーザー名が格納される値を伝達する SAML 属性を指定します。ID プロバイダ内のこの属性の値が、ThingWorx ユーザー名に使用するユーザー名の値と対応していることを確認します。
|
• CAS として PingFederate または Azure AD を使用:
uid
• CAS として AD FS を使用:
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name
|
||
samlAssertionMaxAuthenticationAge
|
SAML 2.0 アサーションが期限切れになるまでの最大経過時間 (秒) を指定します。これにより、認証アサーションの最大セッション時間も指定します。
ID プロバイダで指定したセッションのタイムアウト値に一致する値を設定します。この値は使用されている IdP によって異なります。
|
• LDAP IdP を使用した CAS として PingFederate を使用 (Windchill): 7200 (これがデフォルトです)
• IdP として AD FS を使用 (CAS として AD FS または PingFederate を使用): 28800
• IdP として Azure AD を使用 (CAS として Azure AD または PingFederate を使用): 86400
|
||
ptcOperatorsGroupName
|
オプション。
このパラメータを設定して、グループ (IDP で定義されている) が自動的に ThingWorx 管理者グループの一部になるように設定します
|
|||
administratorAlias
|
オプション。
CAS[IDP] で設定されている管理者のユーザー名。
|
|||
administratorInternalName
|
administratorAlias が定義されている場合には必須です。
ThingWorx で設定されている管理者のユーザー名。
|
たとえば、Administrator などです。
|
||
samlGroupClaimName
|
オプション。
このパラメータは、ptcOperatorsGroupName が定義されている場合にのみ関連します。
CAS で設定されている IDP SAML Group Claim Name を入力して、Thingworx SSO 認証システムでそのグループの自動化を完了します。詳細については、ThingworxSSOAuthenticatorを参照してください。
|
例:
PingFederate CAS の場合 : group
ADFS CAS の場合: http://schemas.xmlsoap.org/claims/Group
AzureAD CAS の場合: http://schemas.microsoft.com/ws/2008/06/identity/claims/groups
|
||
authnContextAsPassword
|
オプション。まれに、次のアサーションを SAML リクエストに配置する必要が生じる場合があります。
<saml2p:RequestedAuthnContext Comparison="exact">
<saml2:AuthnContextClassRef xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion"> urn:oasis:names:tc:SAML:2.0:ac:classes:Password </saml2:AuthnContextClassRef> </saml2p:RequestedAuthnContext> そのような場合に、このプロパティを定義する必要があります。
|
false
|
![]() |
SSO が有効なときにアプリケーションキー認証を有効にする場合は、次の ApplicationKeySettings のコンフィギュレーションに関するセクションを、BasicSettings の下の sso-settings.json の設定に追加します。この設定は、REST API リクエストを介した認証にアプリケーションキーを使用する場合にのみ必要です。この設定が有効/無効であることに関係なく、アプリケーションキーは、WebSocket を介してエッジデバイスから使用できます。
{
"BasicSettings": { ... }, "ApplicationKeySettings": { "enabled": true }, ... } |
パラメータ
|
説明
|
値
|
---|---|---|
dbType
|
ThingWorx のインストールで設定および使用するデータベースのタイプを指定します。
• platform-settings.json ファイルで設定されているものと同じデータベースを使用するには、platform-settings.json で設定されているものと同じデータベースタイプおよび資格証明を指定します。
|
postgres
|
mssql
|
||
driverClassName
|
platform-settings.json ファイルで使用しているドライバークラス名を指定します。
|
dbType が postgres として設定されている場合は、org.postgresql.Driver に設定します。
|
dbType が mssql として設定されている場合は、com.microsoft.sqlserver.jdbc.SQLServerDriver に設定します。
|
||
url
|
ThingWorx インストールのデータベースの場所を示す URL を指定します。
|
dbType が postgres として設定されている場合は、jdbc:postgresql://<ホスト名>:<ポート>/thingworx に設定します。
|
dbType が mssql として設定されている場合は、jdbc:sqlserver://<ホスト名>:<ポート>;databaseName=thingworx;applicationName=Thingworx に設定します。
|
||
username
|
システムがアクセストークンを保存するために使用するデータベースのユーザー名を指定します。これは、platform-settings.json ファイルで指定したユーザー名と一致している必要があります。
|
-
|
password
|
システムがアクセストークンを保存するために使用するデータベースのパスワードを指定します。これは、platform-settings.json ファイルで指定したパスワードと一致している必要があります。
|
-
|
encryptTokenInDatabase
|
データベースで永続化する前にアクセストークンを暗号化する場合は true に設定します。
この値を true に設定した場合、ThingWorx の起動時に private-keyset.cfg ファイルが自動的に作成され、ssoSecurityConfig フォルダに保存されます。このキーセットファイルは 1 回だけ作成されます。
|
true
|
dbType
|
権限承認が格納されるデータベース内の場所
|
---|---|
postgres
|
ThingWorx PostgreSQL データベースの oauth_client_token テーブル内。
|
mssql
|
ThingWorx MS SQL データベースの oauth_client_token テーブル内。
|
パラメータ
|
説明
|
値
|
||
---|---|---|---|---|
keyStoreFilePath
|
キーストアの絶対ファイルパスの場所を指定します。使用する環境に応じて、キーストアファイルが保存されるディレクトリを使用するようにパスを修正します。
|
Windows の場合: <ドライブ>:\\ThingworxPlatform\\ssoSecurityConfig\\sso-keystore.jks
この <ドライブ> には、ThingWorx をインストールしたドライブを指定します。
Linux の場合: <フルパス>/ThingworxPlatform/ssoSecurityConfig/sso-keystore.jks
|
||
keyStoreStorePass
|
キーストアのパスワードを指定します。
|
-
|
||
keyStoreKey
|
デフォルトのキーを指定します。
|
-
|
||
keyStoreKeyPass
|
プライベートキーにアクセスするためのパスワードを指定します。
|
-
|
![]() |
AuthorizationServersSettings 設定には、複数の認証サーバーの情報が含まれることがあります。各サーバーは、sso-settings.json ファイル内で一意の識別子によって識別されます。
|
パラメータ
|
説明
|
値
|
||
---|---|---|---|---|
<AuthorizationServerId1>.clientId
|
認証サーバーからアクセストークンを取得するときに使用するクライアント識別子を指定します。
|
-
|
||
<AuthorizationServerId1>.clientSecret
|
認証サーバーによる認証に使用されるクライアントの資格証明を指定します。
ネットワーク上の完全修飾ドメイン名サーバーの URL に設定します。
|
-
|
||
<AuthorizationServerId1>.authorizeUri
|
アクセストークンを承認するためにユーザーがリダイレクトされる URI を指定します。
|
• CAS として PingFederate を使用:
https://<PingFederate ホスト名>:<PingFederate ポート番号>/as/authorization.oauth2
• CAS として Azure AD を使用: Azure AD 認証ドキュメントの「Update the ThingWorx Configuration Files」を参照してください。
• CAS として AD FS を使用: AD FS 認証ドキュメントの「Update the ThingWorx Configuration Files」を参照してください。
|
||
<AuthorizationServerId1>.tokenUri
|
OAuth2 アクセストークンを取得するために使用する URI を指定します。
ネットワーク上の完全修飾ドメイン名サーバーの URL に設定します。
|
https://<PingFederate ホスト名>:<PingFederate ポート番号>/as/token.oauth2
|
||
<AuthorizationServerId1>.clientAuthScheme
|
クライアントを認証するために使用する方式を指定します。次の値を使用できます。
• form
• header
• query
• none
|
form
|
||
<AuthorizationServerId1>.mandatoryScopes
|
AzureAD および ADFS 以外の CAS ではオプションです。このパラメータが定義されていると、この範囲はリクエストされた accessToken に自動的に追加されます。
|
CAS としての AzureAD では必須です。必須の値は "offline_access" です。
ADFS では必須です。これには ADFS サーバー上の範囲のリストで定義されていない値を指定できます。
|