SQUEEZE 2 Administration Manual This manual is intended for consultants, support staff, partners and technically savvy users who wish to configure Squeeze functions. Versions This page documents different version statuses of Squeeze. The aim is to highlight differences between on-premise and cloud clients and to provide decision-making support for selecting version statuses for updates. General Versioning Squeeze is currently (Q4 2022) versioned using semantic versioning . An example based on version 2.3.1 This is Squeeze in major version 2. Compared to Squeeze 1, incompatibilities may arise, which is why the major version number was increased to 2 at a given point in time. This is the third minor release within Squeeze 2. These releases add features and bug fixes that do not cause any particular problems with backward compatibility or, if unavoidable, explicitly document them. For example, adding a new locator type or a new OCR would be appropriate here. The last digit ‘1’ documents that this version is the first patch for 2.3. In this patch, DEXPRO generally only implements bug fixes that cannot wait until the release of a new minor version. These versions therefore receive little to no new or modified features, so that updates to newer patches can be carried out without any problems. System requirements System requirements for server and clients Server system requirements Hardware / virtual machine The hardware requirements for Squeeze depend heavily on the intended use. The number of documents to be processed daily, the amount of data stored before final resolution, and any customer customisations all influence the hardware requirements. The following applies in principle: - The amount of documents that can be processed simultaneously depends on how many workers are deployed. - One CPU core and 2 GB of RAM should be reserved for each worker. The usage of Squeeze with inadequate hardware (especially CPU and RAM) can cause performance issues.   Minimum Recommended Operating system Linux/Windows Linux/Windows CPU clock speed 2.2 GHz 3.0 GHz CPU cores 6 cores 8 cores RAM 8 GB 16 GB Hard drive HDD 7200 rpm SSD Storage 200 GB 500 GB Network 100 Mbit 1000 Mbit Operating systems Windows OS Version Note Windows 7 Fully supported Windows 10 Fully supported Windows 11 Fully supported Windows Server 2008 R2 Fully supported Windows Server 2012 Fully supported Windows Server 2012 R2 Fully supported Windows Server 2016 Fully supported Windows Server 2019 Fully supported Windows Server 2022 Fully supported Windows Server 2025 Fully supported Linux OS Version Note Ubuntu 14.04   Ubuntu 16.04 Fully supported Ubuntu 18.04 Fully supported Ubuntu 20.04 Fully supported Ubuntu 22.04 Fully supported Debian 8   Debian 9 Fully supported Debian 10 Fully supported Debian 11 Fully supported Debian 12 Fully supported We recommend using Docker. For this purpose, we can provied images and configurations on request if you wish to use them for on-premise installations. Database systems Squeeze is primarily used and tested on the basis of MariaDB. Microsoft SQL Server is also supported and tested using the same test automation as MariaDB and MySQL, but we recommend using MariaDB due to the higher operating costs. Manufacturer Version Microsoft SQL Server 2012 Microsoft SQL Server 2014 Microsoft SQL Server 2016 Microsoft SQL Server 2019 Microsoft SQL Server 2022 MySQL 5.5 - 5.7 MariaDB 5.5.7 MariaDB 10.0 - 10.11 Network Incoming network traffic Port Description 80 HTML frontend and API 443 HTML frontend and API (with SSL) Outgoing network traffic Port Description 25 SMTP for outgoing E-mails 587 SMTP for outgoing E-mails (with encryption) 143 IMAP for incoming E-mails 993 IMAP for incoming E-mails (with encryption) 443 EWS for incoming E-mails (with encryption) 33?? SAP RFC connection (?? = SAP instance number) Runtimes Squeeze and its components require several libraries and applications to be installed. If you use the Windows installer, all necessary applications and libraries are already included in the setup and will be installed and configured during installation. The installer has been designed to install an out-of-the-box system that is ready for immediate use. The applications and libraries are divided into direct and indirect dependencies. One example is the message queue system (RabbitMQ). In more complex environments, it may be necessary to distribute these components across different systems. In this case, you will need to take care of the provisioning of the applications yourself. Direct dependencies Runtime Version Used by PHP 7.4.x Squeeze Server, Worker PHP 8.1.x Squeeze Server, Worker Java 8 Squeeze Server, Worker Indirect dependencies Runtime Version Used by Erlang 10.5 RabbitMQ Erlang 25.3 RabbitMQ Java Depending on the Elasticsearch version Elasticsearch SSO / OAuth / OpenID Connect User management with SSO, OAuth and OpenID Connect. Login with Microsoft With Squeeze version 2.20, it is possible to log in easily using Microsoft Entra ID, also known as Azure AD. This page describes how you can display a login button on the Squeeze login page. Once the configuration is complete, the login page will look like this: Configuration in Microsoft Entra ID Create a Microsoft Entra App for your organization The redirect URL is the URL of your Squeeze tenant with the additional path /sso/ In this example it is https://private.squeeze.one/sso/ Create a client secret for the app Copy the client secret value. Please note that the secret cannot be viewed or copied later. Add the API permissions Enter the Client App-Id and client secret in Squeeze Login with Microsoft – User Provisioning and Groups This page supplements Login with Microsoft (registering the Azure/Entra app, client ID and secret) and describes how users are provisioned automatically on Microsoft login and what the two fields "Group ID Squeeze User" and "Group ID Squeeze Admins" are for . Configuration is done in Squeeze under System → Microsoft authentication : Automatic user provisioning Automatic provisioning is active for Microsoft login: when a user signs in who does not yet exist in Squeeze, the Squeeze account is created automatically . Users therefore do not need to be created manually in Squeeze beforehand. Matching is done via the email address from the Microsoft profile. If a Squeeze user with that email already exists, it is reused and updated; otherwise a new user is created. Requirements in the Microsoft profile For a user to be created automatically , the following fields must be populated in the Microsoft Entra / Azure AD profile: Microsoft field Squeeze field mail (email) Login / email givenName (first name) First name surname (last name) Last name Important: If one of these fields is missing in the Microsoft profile, automatic creation fails with an error (e.g. "No firstname for the user." , "No lastname for the user." or "No email address defined for the user." ). Login then only works for users that were created manually in Squeeze beforehand — because for existing users the creation step is skipped. Many tenants only populate displayName by default, but not givenName / surname . In that case, check the user profiles in Microsoft Entra ID. Configuration fields The "Microsoft authentication" settings dialog contains four fields: Field Content Format App-Id Application (client) ID of the Azure/Entra app GUID, e.g. 3f9a2c14-7b6e-4d21-9c8f-1e5a6b3d0f42 Secret Client secret value (not the secret ID!) ~40 characters Group ID Squeeze User Object ID of a security group GUID Group ID Squeeze Admins Object ID of a security group GUID App-Id: use the application (client) ID of the app — not the directory (tenant) ID . Secret: enter the secret value (the long string) in Squeeze, not the secret ID . After saving, the secret can no longer be viewed. Group configuration Both group fields expect the object ID (GUID) of a security group from Microsoft Entra ID — not the group name. Field Effect Group ID Squeeze User Members may log in and receive a regular Squeeze account. Group ID Squeeze Admins Members may log in and are additionally granted the administrator role ( root ). Behavior depending on configuration Both fields empty: the group check is skipped — any user of the organization can log in. This is exactly what the warning in the dialog points out: "All users of the organization can log in if the group ID for Squeeze Users and/or Squeeze Admins is not set." No one is granted the admin role automatically. At least one field set: only members of the configured group(s) may log in. If a user is in neither group, login is rejected with "You are not a member of an authorized group." Group ID Squeeze Admins set: members of this group are automatically granted the root role on login. This assignment is additive — a role already granted is not revoked on login. Note on the object ID: you can find the required GUID in Microsoft Entra ID under Groups → → Object ID . Roles of automatically created users Admins (members of the admin group) are automatically granted the root role. Regular users are created without an assigned role. To be able to work, they must subsequently be assigned a suitable role (e.g. via user management or a group/role assignment). Without a role a user can log in but cannot work meaningfully in the system — which can give the impression that login "does not take effect". Troubleshooting Symptom Likely cause Login only works for users created manually beforehand Missing profile fields ( givenName / surname / mail ) in the Microsoft profile → automatic creation fails Error "You are not a member of an authorized group." User is in none of the configured groups User is created but cannot do anything Regular user without an assigned role → assign a role afterwards Error "No firstname/lastname/email …" The corresponding field is not populated in the Microsoft profile