Свойства REST
Свойства Jmix REST позволяют настраивать различные аспекты поведения конечных точек универсального REST.
Entities API
jmix.rest.default-max-fetch-size
Определяет максимальное количество экземпляров сущностей, возвращаемых API по умолчанию.
Значение по умолчанию: 10000
jmix.rest.entity-max-fetch-size
Определяет максимальное количество экземпляров сущности, возвращаемых API для конкретной сущности по умолчанию.
В следующем примере настраивается значение entityMaxFetchSize
для двух сущностей. Для всех остальных сущностей используется значение из jmix.rest.default-max-fetch-size.
jmix.rest.entity-max-fetch-size.sample_Product = 500
jmix.rest.entity-max-fetch-size.sample_Customer = 1000
jmix.rest.json-transformation-config
Определяет файл, содержащий список конфигураций преобразований JSON, которые использует REST API, когда клиенту нужны данные в формате определенной версии модели данных.
Файл загружается с помощью интерфейса Resources
, поэтому он может находиться в пути к классам или в каталоге конфигурации.
Значение по умолчанию: none
jmix.rest.max-upload-size
Определяет максимальный размер файла (в байтах), который можно загрузить с помощью REST API.
Файл загружается с помощью интерфейса Resources
, поэтому он может находиться в пути к классам или в каталоге конфигурации.
Значение по умолчанию: 20971520
(20 Mb)
jmix.rest.optimistic-locking-enabled
Включает оптимистическую блокировку сущностей, если атрибут версии указан в JSON.
Значение по умолчанию: false
jmix.rest.queries-config
Определяет файл, содержащий список запросов JPQL, доступных как часть Entities API.
jmix.rest.queries-config = rest/sample/rest-queries.xml
Файл загружается с помощью интерфейса Resources
, поэтому он может находиться в пути к классам или в каталоге конфигурации.
Значение по умолчанию: none
jmix.rest.services-config
Определяет файл, содержащий список методов сервиса, предоставляемых через Services API.
jmix.rest.services-config = rest/sample/rest-services.xml
Файл загружается с помощью интерфейса Resources
, поэтому он может находиться в пути к классам или в каталоге конфигурации.
Значение по умолчанию: none
jmix.rest.response-fetch-plan-enabled
Если установлено значение true, параметр responseFetchPlan
с именем фетч-плана может передаваться в запросах на создание и обновление. В этом случае созданная/обновленная сущность перезагружается с указанным фетч-планом и возвращается как часть ответа JSON.
Если установлено значение false, ответ содержит JSON с минимальным представлением созданной/обновленной сущности.
Значение по умолчанию: true
Безопасность
jmix.rest.anonymous-url-patterns
Определяет разделенный запятыми список шаблонов URL, для которых должен быть разрешен анонимный доступ.
Значение по умолчанию: none
jmix.rest.authenticated-url-patterns
Определяет разделенный запятыми список шаблонов URL-адресов пользовательских контроллеров, для которых требуется стандартная проверка аутентификации OAuth2.
Значение по умолчанию: none
jmix.security.oauth2.client-id
Определяет идентификатор клиента REST API. В этом случае клиент — это не пользователь платформы, а приложение (какой-либо веб-портал или мобильное приложение), использующее REST API. Учетные данные клиента используются для стандартной проверки аутентификации при доступе к операции токена REST API.
Значение по умолчанию: client
Это значение должно быть изменено на случайную, длинную и неугадываемую строку для конкретного приложения. |
jmix.security.oauth2.client-secret
Определяет секрет для клиента REST API. В этом случае клиент — это не пользователь платформы, а приложение (какой-либо веб-портал или мобильное приложение), использующее REST API. Учетные данные клиента используются для стандартной проверки аутентификации при доступе к операции токена REST API.
Значение свойства в дополнение к фактическому значению пароля (например, secret
) должно содержать идентификатор Password Encoder (например, {noop}
). Дополнительную информацию о механизме Password Encoder можно найти в документации Spring Security.
Когда запрос на получение токена отправляется на проверку аутентификации, идентификатор Password Encoder не должен быть частью значения запроса. Только secret является частью запроса.
|
Значение по умолчанию: {noop}secret
Это значение должно быть изменено на случайную, длинную и неугадываемую строку для конкретного приложения. |
jmix.security.oauth2.client-authorized-grant-types
Определяет разрешенные типы грантов.
Значение по умолчанию: password,external,refresh_token
jmix.security.oauth2.client-token-expiration-time-sec
Определяет время истечения срока действия токена доступа в секундах.
Значение по умолчанию: 43200
(12 часов)
jmix.security.oauth2.client-refresh-token-expiration-time-sec
Определяет время истечения срока действия токена обновления в секундах.
Значение по умолчанию: 31536000
(365 часов)
jmix.security.oauth2.dev-mode
Режим разработки позволяет использовать REST API без токена аутентификации. Пользователь по умолчанию, который используется для всех вызовов REST API в режиме разработки, указан в свойстве jmix.security.oauth2.dev-username.
Значение по умолчанию: false
jmix.security.oauth2.dev-username
Определяет имя пользователя, которое используется для режима разработки. См. jmix.security.oauth2.dev-mode.
jmix.security.oauth2.token-masking-enabled
Если значение true, токены маскируются в журналах приложений.
Значение по умолчанию: true