|
|
Убедитесь, что значение каждого параметра исправлено согласно вашим требованиям. Реализация может варьироваться в зависимости от нескольких факторов, таких как место размещения ThingWorx, политика безопасности организации и сервер авторизации для вашего объединения. Используйте информацию, приведенную в следующих таблицах, в качестве руководства при задании значений различных параметров.
|
|
Параметр
|
Описание
|
Значение
|
||
|---|---|---|---|---|
|
clientBaseUrl
|
Определяет URL-адрес экземпляра сервера ThingWorx.
Задайте полное доменное имя (FQDN) сервера ThingWorx.
При конфигурировании ThingWorx для работы в среде высокой доступности (HA) укажите хост-компьютер и порт балансировщика нагрузки.
|
http://<Полное доменное имя ThingWorx>:<port-number>/Thingworx
ИЛИ
В среде с высокой доступностью укажите https://<имя хост-компьютера балансировщика нагрузки>:<номер порта балансировщика нагрузки>/Thingworx
|
||
|
idpMetadataFilePath
|
Требуется только для аутентификации SAML. Определяет абсолютное расположение пути к файлу метаданных IdP.
|
/ThingworxPlatform/ssoSecurityConfig/sso-idp-metadata.xml
|
||
|
metadataEntityId
|
Требуется только для аутентификации SAML. Определяет идентификатор сущности соединения поставщика услуг.
• PingFederate в качестве CAS: используйте уникальный идентификатор, который был выбран при конфигурировании соединения с поставщиком сервисов.
• Microsoft Entra ID в качестве CAS: используйте настройкуIdentifier (Entitity ID), определенную при конфигурировании базовых настроек SAML.
• AD FS в качестве CAS: используйте Relying party trust identifier, определенный при конфигурировании настроек доверия проверяющей стороны.
|
-
|
||
|
metadataEntityBaseUrl
|
Требуется только для аутентификации SAML. Определяет полное доменное имя сервера ThingWorx.
При конфигурировании ThingWorx для работы в среде высокой доступности (HA) укажите хост-компьютер и порт балансировщика нагрузки.
|
http://<Полное доменное имя ThingWorx>:<port-number>/Thingworx
ИЛИ
В среде с высокой доступностью укажите https://<имя хост-компьютера балансировщика нагрузки>:<номер порта балансировщика нагрузки>/Thingworx
|
||
|
webSSOProfileResponseSkew
|
Определяет допустимое отклонение для профиля SAML 2.0 Web SSO.
При задании этого значения необходимо учитывать собственные требования безопасности, а также задержку в корпоративной сети.
Допустимое отклонение - это допустимое отклонение времени ответа, разрешенное получателем из-за предполагаемого различия системных часов. Чтобы минимизировать влияние отклонения, рекомендуется обеспечивать надежную синхронизацию часов во всех включенных системах.
|
300
|
||
|
retriggerOnScopesRemoval
|
Определяет, изменился ли список требуемых контекстных областей и необходимо ли его обновить.
Если установлено значение истина, контекстная область была добавлена в список требуемых контекстных областей или удалена из него.
Если установлено значение ложь, контекстная область была добавлена в список требуемых контекстных областей.
|
истина
|
||
|
samlAssertionUserNameAttributeName
|
Требуется только для аутентификации SAML. Определяет, какой атрибут SAML переносит значение, которое сохраняет имена пользователей ThingWorx при входе в систему. Удостоверьтесь, что значение этого атрибута в поставщике удостоверений соответствует значениям, используемым для имен пользователей ThingWorx.
|
• PingFederate или Microsoft Entra ID в качестве CAS:
uid
• AD FS в качестве CAS:
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name
|
||
|
samlAssertionMaxAuthenticationAge
|
Требуется только для аутентификации SAML. Определяет максимальный возраст (в секундах) утверждения SAML 2.0 до истечения срока его действия. Также определяет максимальное время сессии для утверждения аутентификации.
Задайте значение, соответствующее значению времени ожидания для сессии, которое определено в поставщике удостоверений. Это значение будет отличаться в зависимости от используемого IdP.
|
• PingFederate в качестве CAS с LDAP IdP (Windchill): 7200 (значение по умолчанию).
• AD FS в качестве IdP (с AD FS или PingFederate в качестве CAS): 28800.
• Microsoft Entra ID в качестве IdP (с Microsoft Entra ID или PingFederate в качестве CAS): 7776000
|
||
|
ptcOperatorsGroupName
|
Необязательный.
Задайте этот параметр для автоматического конфигурирования группы (как определено в IDP) в составе группы администраторов ThingWorx
|
|||
|
administratorAlias
|
Обязательный для аутентификации OIDC.
|
Имя администратора в том виде, в котором оно сконфигурировано в CAS[IDP].
|
||
|
administratorInternalName
|
Требуется, если определена опция administratorAlias.
|
Имя администратора в том виде, в котором оно сконфигурировано в ThingWorx. Например, Administrator.
|
||
|
samlGroupClaimName
|
Необязательно, но требуется для аутентификации SAML.
Этот параметр применим только тогда, когда определено ptcOperatorsGroupName.
Введите значение IDP SAML Group Claim Name, сконфигурированное в CAS, для завершения автоматизации для этой группы в аутентификаторе SSO Thingworx. Дополнительные сведения см. в разделе ThingworxSSOAuthenticator.
|
Примеры:
Для PingFederate CAS: группа
Для ADFS CAS: http://schemas.xmlsoap.org/claims/Group
Для Microsoft Entra ID CAS: http://schemas.microsoft.com/ws/2008/06/identity/claims/groups
|
||
|
authnContextAsPassword
|
Дополнительно. В некоторых редких случаях IdP требует поместить следующее утверждение в запрос 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
|
||
|
authenticationType
|
Дополнительно. Тип аутентификации: oidc/saml. Значение по умолчанию: saml
|
Не требуется для PingFederate и ADFS (поскольку saml - значение по умолчанию)
Для Microsoft Entra ID: saml/oidc
Для Azure AD B2C и Atlas IAM: oidc
|
|
|
Если требуется активировать аутентификатор ключей приложений при включенном SSO, необходимо добавить следующий раздел конфигурации ApplicationKeySettings в настройки sso-settings.json в BasicSettings. Это необходимо делать только в том случае, если требуется использовать Ключи приложений для аутентификации через запросы REST API. Ключи приложений можно продолжать использовать с устройств Edge через 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
|
Определяет URL-адрес расположения базы данных для установки ThingWorx.
|
Если для dbType задано значение postgres, задайте jdbc:postgresql://<имя_хоста>:<порт>/thingworx.
|
|
Если для dbType задано значение mssql, задайте jdbc:sqlserver://<имя_хоста>:<порт>;databaseName=thingworx;applicationName=Thingworx=Thingworx.
|
||
|
username
|
Определяет имя пользователя для базы данных, которая используется системой для хранения маркеров доступа. Имя должно соответствовать имени пользователя, указанному в файле platform-settings.json.
|
-
|
|
password
|
Определяет пароль для базы данных, которая используется системой для хранения маркеров доступа. Пароль должен соответствовать паролю, указанному в файле platform-settings.json.
|
-
|
|
encryptTokenInDatabase
|
Установите значение истина, чтобы шифровать маркеры доступа перед сохранением в базе данных.
|
истина
|
|
dbType
|
Расположение в базе данных, в котором хранятся утверждения разрешений
|
|---|---|
|
postgres
|
В таблице oauth_client_token в базе данных PostgreSQL ThingWorx.
|
|
mssql
|
В таблице oauth_client_token в базе данных MS SQL ThingWorx.
|
|
Параметр
|
Описание
|
Значение
|
||
|---|---|---|---|---|
|
keyStoreFilePath
|
Определяет абсолютное расположение пути к файлу KeyStore. В зависимости от среды, измените путь так, чтобы использовался каталог, в котором сохранен файл KeyStore.
|
Для Windows: <диск>:\\ThingworxPlatform\\ssoSecurityConfig\\sso-keystore.jks
Здесь <диск> указывает диск, на котором установлено приложение ThingWorx.
Для Linux: <полный путь>/ThingworxPlatform/ssoSecurityConfig/sso-keystore.jks
|
||
|
keyStoreStorePass
|
Заданный пароль KeyStore.
|
-
|
||
|
keyStoreKey
|
Определяет ключ по умолчанию.
|
-
|
||
|
keyStoreKeyPass
|
Определяет пароль для доступа к закрытым ключам.
|
-
|
|
|
Рекомендуется задавать конфигурацию AuthorizationServersSettings в файле platform-settings.json, который является новым расположением для авторизации. Дополнительные сведения см. в разделе таблицы AuthorizationServersSettings в файле platform-settings.json.
При наличии разных идентификаторов сервера авторизации, определенных в параметрах AuthorizationServersSettings файлов sso-settings.json и platform-settings.json, будут поддерживаться оба параметра. Однако если в обоих файлах определен один и тот же идентификатор сервера авторизации, будет использоваться идентификатор, определенный в файле platform-settings.json.
|
|
|
Настройки AuthorizationServersSettings могут содержать информацию для нескольких серверов авторизации. Каждый сервер определяется уникальным идентификатором в файле sso-settings.json.
|
|
Параметр
|
Описание
|
Значение
|
||||
|---|---|---|---|---|---|---|
|
<AuthorizationServerId1>.clientId
|
Указывает идентификатор клиента, используемый при получении лексем доступа от сервера авторизации.
|
-
|
||||
|
<AuthorizationServerId1>.clientSecret
|
Определяет идентификационные данные клиента, которые используются для аутентификации на сервере авторизации.
Задайте полностью определенное значение URL-адреса DNS-сервера в сети.
|
-
|
||||
|
<AuthorizationServerId1>.authorizeUri
|
Определяет URI, по которому должен перенаправляться пользователь для авторизации лексемы доступа.
|
• PingFederate в качестве CAS:
https://<Наименование хост-компьютера PingFederate>:<номер-порта-PingFederate>/as/authorization.oauth2
• Microsoft Entra ID в качестве CAS: см. раздел Обновление файлов конфигурации ThingWorx в документации по авторизации Microsoft Entra ID.
• AD FS в качестве CAS: См.
Обновите файлы конфигурации ThingWorx в документации по авторизации AD FS.
|
||||
|
<AuthorizationServerId1>.tokenUri
|
Определяет URI, используемый для получения лексемы доступа OAuth2.
Задайте полностью определенное значение URL-адреса DNS-сервера в сети.
|
https://<Наименование хост-компьютера PingFederate>:<номер-порта-PingFederate>/as/token.oauth2
|
||||
|
<AuthorizationServerId1>.clientAuthScheme
|
Определяет схему, используемую для аутентификации клиента. Допустимые значения:
• form
• header
• query
• нет
|
form
|
||||
|
<AuthorizationServerId1>.mandatoryScopes
|
Опция CAS, отличная от Microsoft Entra ID и ADFS. Эта контекстная область будет автоматически добавлена к запрашиваемому значению accessToken при определении этого параметра.
|
Требуется в случае Microsoft Entra ID в качестве CAS. Обязательное значение - "offline_access".
Требуется для ADFS - это может быть любое значение, которое не определено в списке контекстных областей на сервере ADFS.
|
|
Параметр
|
Описание
|
Значение
|
||
|---|---|---|---|---|
|
openIdConfigurationUri
|
Требуется
Это URI для метаданных сервера OpenID.
Обычно он публикуется на известном URL-адресе.
|
|||
|
clientId
|
Указывает идентификатор клиента, используемый при получении лексем доступа от сервера авторизации.
|
|||
|
clientSecret
|
Определяет идентификационные данные клиента, которые используются для аутентификации на сервере авторизации.
|
|||
|
additionalScopes
|
Необязательно
Строка, разделенная запятыми, с дополнительными контекстными областями для авторизации OIDC
|
|||
|
assertionUserNameAttributeName
|
Указывает, в каком открытом запросе переносится значение, в котором сохраняются имена пользователей ThingWorx при входе в систему. Убедитесь, что значение этого атрибута в поставщике удостоверений соответствует значениям, используемым для имен пользователей ThingWorx.
Для Azure AD B2C убедитесь, что значение этого атрибута уникально для всех поставщиков удостоверений.
|
|||
|
accessTokenClaimsValidation
|
Необязательно
Определяет существование запросов лексемы доступа и проверку значений запросов.
Входные данные - это простая строка JSON, в которой каждое свойство является обязательным именем запроса, а значением является обязательное значение запроса. Если значение не указано (пустая строка), будет проверено только наименование запроса.
|
|||
|
useAccessTokenClaims
|
Необязательно
Указывает, нужно ли загружать лексемы доступа для сопоставления расширений пользователя.
Задавать для этого свойства значение true только в следующем случае:
• Лексема доступа содержит запросы, которые не включены в лексему openid и необходимы для расширения пользователя.
• Для Azure AD B2C - если требуется загрузить информацию о группе пользователей с помощью AzureSettings.apiEndPoint.
|
true/false
|
||
|
authorizeUriAdditionalParameters
|
Необязательно
Дополнительные параметры аутентификации OIDC.
|
|
Параметр
|
Описание
|
Значение
|
||
|---|---|---|---|---|
|
apiEndPoint
|
Необязательно
Конечная точка графика Azure
Требуется только для загрузки информации о группе (если лексема openID/Access не содержит запрос группы)
|
http://graph.microsoft.com/v1.0/
|