Download the PHP package jardissupport/auth without Composer

On this page you can find all versions of the php package jardissupport/auth. 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 auth

Jardis Auth

Build Status PHP Version

Part of Jardis — the Domain-Driven Design platform for PHP. You model your domain; Jardis generates the production-ready hexagonal code (DTOs, Command/Query handlers, repositories, persistence). This package is part of the open-source foundation that generated code runs on.

Authentication and authorization without framework coupling. A focused RBAC for PHP covering opaque tokens, session management, password hashing, and role-based access control — designed for DDD applications. No HTTP layer, no JWT, no third-party runtime dependencies beyond PHP built-ins and the Jardis contract. Pure support package.


Why This Package?


Installation


Quick Start

Create a Session

Verify & Refresh Tokens

Hash & Verify Passwords

Authorize with RBAC

Authenticate with Password

Invalidate Sessions


Token Store

The package defines TokenStoreInterface — you implement it in your infrastructure layer:

An InMemoryTokenStore is included in tests/Support/ for testing.


Password Hashing


Error Handling

Exception When
AuthenticationException Authentication failed (base class)
TokenExpiredException Token has expired
TokenRevokedException Token was revoked
InvalidCredentialException Invalid credentials provided
UnauthorizedException Insufficient permissions (RBAC)

Architecture

The user sees four orchestrators. Internally, each delegates to invokable handlers:

Each handler is an invokable object (__invoke) — independently testable, replaceable, composable. The orchestrators contain no business logic, only delegation.

Test Structure

Tests mirror the src/ directory:


Contracts

Requires jardissupport/contracts ^1.0 || ^2.0 (ab dieser Version). Defined in jardissupport/contracts — implement these in your infrastructure:

Interface Purpose
TokenStoreInterface Token persistence: store, find, revoke, deleteExpired
PasswordHasherInterface Hash, verify, needsRehash
GuardInterface Permission check + authorize
AuthenticatorInterface Authenticate credentials, return AuthResult

Kernel Integration

Auth is wired directly — constructor injection, no framework hook. DomainKernel (the Koffer in jardiscore/kernel) exposes 11 accessors for cross-cutting infrastructure (cache, logger, database, HTTP client, mailer, filesystem, event dispatcher/registry), but no auth(): Auth is a support package you instantiate and wire yourself in your bounded context.

(Earlier docs described this as "no service hook in DomainApp" — DomainApp was removed in the Kernel-Entkopplung refactor. The fact is unchanged, only the vocabulary: today's Koffer is DomainKernel, consumed by the generated {Domain}Context.)

ENV Variables (optional)

This package does not read the process environment itself — no getenv/$_ENV/DotEnv call exists in src/. The names below are a suggested convention for values you read yourself in the consuming application and pass explicitly into the constructors/methods (e.g. AUTH_HASH_ALGO → the $algorithm argument of PasswordHasher, AUTH_TOKEN_LENGTH → the length argument when generating a Token).


What This Package Does NOT Do


Development


Documentation

Full documentation, guides, and API reference:

docs.jardis.io/en/support/auth


License

MIT License — free for any use, including commercial.

AI-Assisted Development

This package ships with a skill for Claude Code, Cursor, Continue, and Aider. Install it in your consuming project:

More details: https://docs.jardis.io/en/skills


All versions of auth with dependencies

PHP Build Version
Package Version
Requires php Version >=8.3
ext-sodium Version *
jardissupport/contracts Version ^1.0 || ^2.0
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 jardissupport/auth contains the following files

Loading the files please wait ...