Download the PHP package ginkelsoft/laravel-data-subject-access without Composer

On this page you can find all versions of the php package ginkelsoft/laravel-data-subject-access. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package laravel-data-subject-access

Ginkelsoft Laravel Data Subject Access

Tests Laravel PHP

Overview

Implements GDPR art. 15 (right of access) — and, since the output is structured, doubles as art. 20 (data portability) — for a Laravel application. Given a subject identifier, the package collects every record that any registered Eloquent model holds about that subject and renders it in JSON or Markdown. The action is strictly read-only: nothing is modified, deleted, or anonymized.

Every access is itself a verwerking, so each export writes one row per matched model to a dedicated, append-only subject_access_log hash chain built on the shared HashChain from ginkelsoft/laravel-compliance-core. The log stores only the irreversible subject hash, the source model class, a record count and the format — never the exported data, never the subject identifier.

This is the subject access member of the GinkelSoft compliance family.

The family

Package GDPR Article(s) Role
laravel-compliance-core art. 5(2) Shared primitives
laravel-data-retention art. 5(1)(e) Storage limitation
laravel-data-right-to-be-forgotten art. 17 Subject-driven erasure
laravel-data-subject-access art. 15 + 20 Subject access — this package
laravel-data-consent art. 6(1)(a) + 7 Consent registry
laravel-data-breach-registry art. 33 + 34 Breach registry
laravel-compliance-hub art. 5(2) Umbrella

How it works

1. Declare which fields are exportable

Mirror of the other family patterns: an attribute for the subject column, a property for the explicit list of fields. Models implement Ginkelsoft\DataSubjectAccess\Contracts\Exportable and use the matching trait.

The field list is opt-in per field: auto-including every column is unsafe (internal flags, technical foreign keys, hashed values) so this package refuses to do it.

2. Register the models

3. Run the export

The command name keeps the retention: prefix for BC with the v1.x monolithic package. Without --output the export is written to STDOUT, so it can be piped or captured. With --output it lands in the given file (missing intermediate directories are created). Two formats ship by default; the Ginkelsoft\DataSubjectAccess\Contracts\Exporter interface lets you add more (HTML, CSV, PDF) without touching the rest of the package.

4. Verify the access chain

Or run php artisan compliance:verify from the hub to verify every chain in the family in one shot.

What the log stores

Column Meaning
subject_hash SHA-256 of subject id + secret — irreversible
model_type FQCN of the matched model
record_count Number of records found for this model
format The exporter format used (json, markdown, ...)
performed_at UTC timestamp
previous_hash / hash Hash chain bookkeeping

No subject identifier, no field values.

Compliance notes

This package is not legal advice. Identity verification (is this requester actually the subject?) is your application's responsibility.

Installation

Then add a secret to .env (shared with the rest of the family):

Gotchas

Testing

Reporting bugs

Found a bug or unexpected behaviour? We want to hear about it.

Preferred — open a GitHub issue: https://github.com/ginkelsoft-development/laravel-data-subject-access/issues/new

When opening an issue, please include:

  1. Versions — PHP, Laravel, and the package version (composer show ginkelsoft/laravel-data-subject-access).
  2. What you did — the artisan command, code snippet, or steps that triggered the bug.
  3. What you expected vs what actually happened — include full error output or a stack trace if there is one.
  4. A minimal reproduction if you can — a failing test or a small code sample beats a long description.

Security-sensitive findings (anything that could expose personal data, break a hash-chain, or bypass an audit log) — please do not open a public issue. E-mail [email protected] directly with "SECURITY" in the subject line and we will respond privately.

Not on GitHub? You can also e-mail [email protected] with the same information.

Contact

For commercial support, integration questions, or anything that doesn't fit a GitHub issue: [email protected]https://ginkelsoft.com.

License

MIT License — see LICENSE. (c) 2026 Ginkelsoft


All versions of laravel-data-subject-access with dependencies

PHP Build Version
Package Version
Requires php Version ^8.2
illuminate/support Version ^10.0 || ^11.0 || ^12.0 || ^13.0
illuminate/database Version ^10.0 || ^11.0 || ^12.0 || ^13.0
illuminate/console Version ^10.0 || ^11.0 || ^12.0 || ^13.0
nesbot/carbon Version ^2.62 || ^3.0
ginkelsoft/laravel-compliance-core Version dev-development
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package ginkelsoft/laravel-data-subject-access contains the following files

Loading the files please wait ...