Copyright (C) 2016-2025 The Open Library Foundation
This software is distributed under the terms of the Apache License, Version 2.0. See the file "LICENSE" for more information.
Module to provide central user management for FOLIO systems.
- Java 21 JDK
- Maven 3.3.9
The raml-module-builder framework.
Other modules.
Other FOLIO Developer documentation is at dev.folio.org
See project MODUSERS at the FOLIO issue tracker.
See the built target/ModuleDescriptor.json for the interfaces that this module
requires and provides, the permissions, and the additional module metadata.
This module's API documentation.
The built artifacts for this module are available. See configuration for repository access, and the Docker image.
To enable this feature for a tenant, we need to perform one of the two ways described below
This is a preferred method of configuring Profile-Picture feature.
or, depending on the required operations, any of the below permissions can be used
POST /user/settings
{
"id": "3346f338-593c-447e-924e-bbfb2a883715",
"scope": "mod-users",
"key": "PROFILE_PICTURE_CONFIG",
"value": {
"enabled": true,
"maxFileSize": 5.0,
"encryptionKey": "ThisIsASimpleDefaultKeyToTestIts",
"enabledObjectStorage": false
}
}Required parameters:
key = "PROFILE_PICTURE_CONFIG"scope = "mod-users"value.enabled- true/false to enable/disable profile-picture featurevalue.maxFileSize- maximum file size in megabytes (range 0.1 to 10)value.encryptionKey- encryption key to encrypt/decrypt profile picturesvalue.enabledObjectStorage- true/false to enable/disable object storage (S3/minio). By default DB storage will be used.
When modifying the configuration setting using PUT /user/settings/{id}, ensure that the value property is a valid JSON object
and _version property is provided with the correct version number.
Note: This method is not the preferred way of configuring Profile-Picture feature and starting from version 19.6.0 may not applicable anymore as the configuration entry which was used to be provided by this option will be migrated to the users.settings interface in version 19.6.0
GET /users/configurations/entry
PUT /users/configurations/entry/{id}
{
"id": "UUID of the configuration entry obtained from GET",
"configName": "PROFILE_PICTURE_CONFIG",
"enabled": true,
"enabledObjectStorage": false,
"encryptionKey": "fgrdvbfgjhutyrdhvbcxzmturdhgtiok",
"maxFileSize": 4
}Note: maxFileSize must and should be within range of 0.1 to 10 megabytes.
By default DB storage will be enabled . To enable Object storage(S3/minio) below variables should be present in the env
AWS_URL
AWS_REGION
AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY
Note:- Bucket should pre-exist with same name as tenantName.