Search by

markenstuermer / t3adminer

markenstuermer

Adminer as BE module to work with the database. Fork of jigal/t3adminer for TYPO3 13 and 14.

Package info

gitlab.com/msr-public/t3adminer

Issues

Type:typo3-cms-extension

pkg:composer/markenstuermer/t3adminer

Statistics

Installs: 548

Dependents: 0

Suggesters: 0

Stars: 1

v1.1.0 2026-11-03 21:51 UTC

This package is auto-updated.

Last update: 2026-11-03 20:52:35 UTC


README

markenstuermer/t3adminer adds Adminer to the TYPO3 backend as a compact database maintenance module. The extension is intended for trusted technical users who need quick access to the TYPO3 database without adding a separate database administration application to the project.

The TYPO3 extension key is markenstuermer_t3adminer.

Compatibility

ComponentSupported versions
TYPO3 CMS13.4 LTS, 14.3+
PHP8.2, 8.3, 8.4, 8.5
PHP extensionsphar

Installation

Install the package in a TYPO3 project:

composer require markenstuermer/t3adminer

For local package development, add this repository as a Composer path repository in the host project and require the development version:

composer require markenstuermer/t3adminer:@dev

After installation, clear TYPO3 caches and open the Adminer backend module as a system maintainer.

Configuration

The extension configuration controls access and file locations:

  • IPaccess: optional comma-separated allowlist for client IP addresses.
  • applyDevIpMask: additionally enforce TYPO3's global devIPmask.
  • exportDirectory: private directory for server exports, outside the public web root. Leave empty for var/adminer/exports. The former fileadmin default (also with a trailing slash or as an absolute public/fileadmin path) uses this private directory automatically. Existing settings and files are not modified. Other public export paths remain invalid and require explicit reconfiguration.
  • uploadDir: readable directory containing adminer.sql for server-side imports. Browser file uploads continue to use PHP's upload handling.

Configured relative paths resolve from the public document root. Export files are created exclusively; existing files are never overwritten. Export and import directories must be available to the PHP process.

Security Notes

Adminer gives direct database access. Use this module only in projects where system maintainer access is tightly controlled. In staging or production contexts, configure IP restrictions and avoid leaving database export files in publicly reachable locations.

All Adminer requests use the TYPO3 backend authentication stack and require a current system maintainer session. The old direct t3adminer.php URL returns 403. Adminer login and permanent-login POSTs are disabled; modifying requests require the Adminer session's CSRF token. Embedding is limited to the same origin.

The bundled engine is AdminerEvo 4.8.4 with local integration patches (controlled exit handling, buffered responses and PHP compatibility adjustments). This is not an upgrade to the current upstream Adminer release. The security changes still require integration testing on TYPO3 13/14 before production deployment. Responses are buffered before TYPO3 emits them; progressive query output and in-response query-timeout cancellation are currently limited by this adapter. Connections configured with unix_socket are currently rejected explicitly; use a supported TCP connection when evaluating this version.

Development

Install dependencies:

composer install

Common checks:

composer lint
composer qa
composer refactoring
composer test

composer lint covers Composer metadata, PHP syntax (including the embedded engine), PHP style, debug markers, TypoScript files if present, and PHPCS checks. composer qa runs PHPStan and PHPMD. composer refactoring runs Rector in dry-run mode. Unit regression tests live in Tests/Unit; functional tests belong in Tests/Functional. Local tool configuration lives in Build/QA/. CLI tests do not verify native response headers or authenticated browser workflows. Full TYPO3 13/14 and PHP version matrix testing remains necessary; source review is not release approval.

Releases

1.1.0

  • Keeps the hardened TYPO3 backend routing, session binding and CSRF protection.
  • Maps the former fileadmin export default to private var/adminer/exports at runtime without rewriting configuration or moving existing files.
  • Rejects other public export paths and symlinked public parent directories.
  • Adds configuration diagnostics, storage regression tests and updated TYPO3 14 test fixtures.

On upgrade, review existing exports in fileadmin: they are not moved or protected retroactively. Configure a private export directory or use the default. Existing public custom export paths must be reconfigured before using the module.

Do not set a Composer version field. Package releases should be created with Git tags. The TYPO3 ext_emconf.php version starts at 1.0.0 and is independent from TYPO3 major versions.

Credits

This extension is based on the original jigal/t3adminer extension. Thanks to Jigal van Hemert and all previous contributors for their work on the TYPO3 Adminer integration.