Details
-
Bug
-
Status: Resolved
-
Critical
-
Resolution: Fixed
-
None
-
None
Description
Though the expired column of the guacamole_user table is correctly mapped for PostgreSQL:
<!-- Result mapper for user objects --> <resultMap id="UserResultMap" type="org.apache.guacamole.auth.jdbc.user.UserModel" > ... <result column="disabled" property="disabled" jdbcType="BOOLEAN"/> <result column="expired" property="expired" jdbcType="BOOLEAN"/> <result column="access_window_start" property="accessWindowStart" jdbcType="TIME"/> ... </resultMap>
it is not mapped at all for MySQL:
<!-- Result mapper for user objects --> <resultMap id="UserResultMap" type="org.apache.guacamole.auth.jdbc.user.UserModel" > ... <result column="disabled" property="disabled" jdbcType="BOOLEAN"/> <result column="access_window_start" property="accessWindowStart" jdbcType="TIME"/> ... </resultMap>
This column controls manual password expiration, which is thus broken for MySQL and MariaDB databases.
See also: http://guacamole.incubator.apache.org/doc/gug/jdbc-auth.html#jdbc-auth-schema-users