Free Edition & Professional Edition
|Features & Details||Free Edition||Professional Edition|
|Open source databases: MariaDb, MySQL, PostgreSQL|
|Microsoft SQL Server|
|Main SQL types: Boolean, Integer, Short, Double, Float, BigDecimal, Long, String, Date, Time, Timestamp|
|BLOB & CLOB types|
|DML operations (DELETE, INSERT, SELECT, UPDATE, …)|
|TCL operations (COMMIT, ROLLBACK, SAVEPOINT)|
|DCL operations (GRANT, REVOKE, ...)|
|DDL operations (CREATE, ALTER, DROP, RENAME, …)|
JDBC API metadata calls from client-side
All JDBC metadata APIs are callable from the client side, allowing you to use database viewers with the AceQL Client JDBC Driver: DBeaver, DbVisualizer, etc.
|Tomcat JDBC Connection Pooling|
|Support any JDBC Pooling Connection framework (DBCP, HikariCP, C3P0, etc.)|
|Full control of Connection release in the pool
Allows you to trigger Java events before and after the release of the Connection to the Pool
|Maximum simultaneous JDBC Connections per database||125||Unlimited|
|Unlimited SELECT result set size|
|Limiting maximum size of SELECT result|
|Java AceQL stored procedures
Call from client-side Java programs that directly return a formatted, ready-to-use ResultSet created on the server side.
|SQL stored procedures|
|Windows, SSH, JDBC Query, LDAP, Web Service
Provides ready-to-use classes for authenticating against a Windows server, a Linux server, a SQL table, a LDAP server or a Web service.
|External authentication without a password
Some working environments (Intranet, etc.) require the client user to authenticate themself without a password. This feature allows for client authentication with a session ID.
|Request headers analysis for validation on server
The request headers may be intercepted on the server side by the validate() method of a Java interface. This feature eases authentication against Cloud services that use request headers, such as AWS.
|Firewall rules creation using Java Dependency Injection|
|Ready-to-use firewall chained rules set
Easily build firewall rules by chaining provided, ready-to-use classes.
|Firewall rules set definition using a CSV file
Define complex firewall rules using only a CSV file loaded at server startup. Each SQL query is performed against the content of the CSV file.
|Trigger code/action if attack is detected|
|Maximum number of databases per running instance||2||Unlimited|
Allows defining Java code to execute after a successful SQL database update is done. Update Listeners can be viewed as a kind of Java "trigger" executed on the completion of SQL updates. Much easier to code and use than SQL database vendors specific listeners.
|Java ThreadPoolExecutor fine tuning
Allows you to define all the parameters of the java.util.concurrent.ThreadPoolExecutor instance used to execute all servlet requests in async mode.
|JDBC Connection pool monitoring servlet
Allows you to define servlets that can interact with AceQL Web Server (in order to query info about JDBC pools in use, or modify a pool size, etc.)
|Controlling the AceQL Web Server from a program
Allows you to start and stop the AceQL Web Server from a Java program.
|Running AceQL directly in a Servlet container (Tomcat, JBoss, etc.)|
|Properties file encryption
In order to protect configuration passwords and other confidential values from eavesdropping, each property value may be replaced by an encrypted value in the main properties file.