This article details the technical architecture of Asset Bank, useful if you are planning on hosting Asset Bank on your own infrastructure.
Asset Bank can be installed on most servers, for example on Windows or Linux, or any other operating system that supports the required software. Read more about the On-Premise System Requirements here.
Please also see our article detailing the technical stack on our shared and dedicated hosting.
Tomcat contains a built-in HTTP server, and so can be configured to listen at port 80. However, for most installations we recommend using a web server such as Apache or IIS.
If you intend to install Asset Bank on a server that already runs a web server, e.g. for other applications or intranets, then you can configure your existing web server to work with Asset Bank.
Asset Bank is written in Java (which is why it will run on most operating systems), and runs on a J2EE-compliant application server or servlet engine. We recommend Tomcat 8. It requires the Java (JDK), version 8.
Asset Bank is compatible with MySQL (and MariaDB) and Microsoft SQL Server. If you don’t already have a licence for SQL Server then we would recommend MySQL as it is free. The database can be installed locally to the application, or can be remote, in an existing cluster.
Data and File Storage
Asset Bank stores metadata in a relational database. The files are stored in one or more ‘repository’ directories, which do not necessarily have to be on the same server as Asset Bank (although of course Asset Bank needs to be able to read from them and write to them) - for example they can be on NAS or SAN devices.
Asset Bank can be configured to store the asset files in the database (as binary objects) although for a standard set up we recommend using a file system. It can also store files in Amazon S3.
User Authentication and Single Sign-on
Asset Bank can integrate with various SSO (Single Sign-On) technologies, such as ADFS, Azure AD, Okta, OpenID, Crowd and Sage Passport. Its authentication architecture enables us to write ‘plug ins’ for new SSO technologies relatively easily, so please contact us if you use a different one.
Asset Bank can also be configured to integrate with an LDAP server (such as Active Directory or Novell) so that users can log in using their standard network usernames/passwords. To do this it needs to be able to access the LDAP server via HTTP or HTTPS. If you are running Active Directory then IIS can be configured to use Windows Integrated Authentication so that Windows users are logged in automatically.
For more information see SSO Options.
Asset Bank uses a number of well-respected open source libraries to convert files to different formats and extract metadata. These are:
- ImageMagick - used to manipulate images for example to generate thumbnails, convert image formats, apply the watermark and resize images on download.
- DCRAW - used to handle 'raw' file formats.
- GhostScript - used to generate thumbnails for PDF, PS (Postscript) and EPS files.
- FFMPEG - used to generate a thumbnail and preview clip for video files.
- Exiftool - used to support embedded data mappings (allowing data to be extracted from, and written to, files).