Download the PHP package apex/armor without Composer

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

Armor - User and Session Management

Designed to provide a solid base foundation for development of a custom user management system, and provides highly configurable base functionality including collection and management of basic user info (username, password, e-mail, phone, geo-location data, et al), e-mail / phone verification, authenticated sessions, 2FA e-mail / SMS requests, user segregated AES256 bit encryption, and more. This is not meant to be a user management system in and of itself, but instead is intended to be extended by one to provide a base foundation. It supports:

Extensions and Demo

Several extensions are available providing functionality for different authentication schemas:

An example implementation using the Syrus template engine can be found at:

Installation

Install via Composer with:

composer require apex/armor

Please see the implementation guide linked below.

Table of Contents

  1. Implementation Guide
    1. Setup Database Connection
    2. Install Database
    3. AdapterInterface Class
    4. Example Syrus Implementation
  2. Armor Class
    1. Container Definitions
    2. ArmorPolicy Configuration
    3. Brute Force Policy
    4. Policy Manager
  3. User Profiles (create, load, remove users)
    1. ArmorUser Class
    2. Registration Info
    3. Validator
    4. Devices
    5. Pending Password Changes
    6. IP Restrictions
    7. Activity Log
    8. Login History
  4. Verifying users
    1. E-Mail
    2. E-Mail via OTP
    3. Phone via SMS
    4. Reset Password
    5. Define Password After Registration
    6. Define Phone After Registration
  5. Login and Auth Sessions
    1. Login and Request Authentication
    2. Auto Login
    3. AuthSession Class
    4. Encrypt / Decrypt Data
    5. Session Attributes
    6. CSRF
    7. reCaptcha
  6. Two Factor Requests
    1. E-Mail
    2. E-Mail via OTP
    3. Phone via SMS
  7. AES Encryption
    1. User Based Encryption
    2. Password Based Encryption

Basic Usage

use Apex\Armor\Armor;

// Create user
$armor = new Armor();
$user = $armor->createUser('', 'password12345', 'jsmith', '[email protected]', '14165551234');
$uuid = $user->getUuid();

// Get user by UUID
$user = $armor->getUuid($uuid);

// Update e-mail address
$user->updateEmail('[email protected]');

// Check if request is authenticated session
if (!$session = $armor->checkAuth()) { 
    die("You are not logged in");
}

// Require two factor authentication
$session->requireTwoFactor();

// Code below this line will not be executed until authenticated via e-mail / phone.

// Encrypt data to user's RSA key
$data_id = $session->encryptData('some sensitive data');

// Decrypt data at a later date
$text = $session->decryptData($data_id);

Support

If you have any questions, issues or feedback, please feel free to drop a note on the ApexPl Reddit sub for a prompt and helpful response.

Follow Apex

Loads of good things coming in the near future including new quality open source packages, more advanced articles / tutorials that go over down to earth useful topics, et al. Stay informed by joining the mailing list on our web site, or follow along on Twitter at @mdizak1.


All versions of armor with dependencies

PHP Build Version
Package Version
Requires php Version >=8.1
maxmind-db/reader Version ^1.11
symfony/string Version ^6.0
brick/phonenumber Version ^0.4
donatj/phpuseragentparser Version ^1.4
nyholm/psr7-server Version ^1.0
nyholm/psr7 Version ^1.4
apex/db Version ^2.1
apex/container Version >=2.0
apex/migrations Version ^2.0
apex/mercury Version ^2.0
ext-redis Version *
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 apex/armor contains the following files

Loading the files please wait ....