PHPackages                             eluki/license-server - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. eluki/license-server

ActiveLibrary[Authentication &amp; Authorization](/categories/authentication)

eluki/license-server
====================

Pacote servidor de licenças para Laravel

v1.0.0(9mo ago)07MITBlade

Since Sep 13Pushed 9mo agoCompare

[ Source](https://github.com/Kimossii/license-server)[ Packagist](https://packagist.org/packages/eluki/license-server)[ Docs](https://github.com/Kimossii/license-server)[ RSS](/packages/eluki-license-server/feed)WikiDiscussions main Synced today

READMEChangelogDependenciesVersions (2)Used By (0)

License Server for Laravel
==========================

[](#license-server-for-laravel)

📦 Packagist
-----------

[](#-packagist)

[![Latest Stable Version](https://camo.githubusercontent.com/73be93e2e3f65532a9faac5c268f4175b06d89c60f9eebc6581a10e97123e1c2/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f656c756b692f6c6963656e73652d7365727665722e737667)](https://packagist.org/packages/eluki/license-server)[![License](https://camo.githubusercontent.com/7013272bd27ece47364536a221edb554cd69683b68a46fc0ee96881174c4214c/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d626c75652e737667)](LICENSE)

Encontre este pacote no [Packagist](https://packagist.org/packages/eluki/license-server) para facilitar a instalação e atualização via Composer.

Pacote Laravel para gerenciamento de licenças de software, permitindo criar, gerar e distribuir licenças de forma segura para clientes.

O **License Server** funciona como backend central de licenciamento, gerenciando todas as licenças emitidas para o License Client.

---

📦 Instalação
------------

[](#-instalação)

Instale via Composer:

```
composer require eluki/license-server
```

Publique os arquivos de configuração e migrations:

```
php artisan vendor:publish --provider="LicenseServer\ServerServiceProvider"
```

Execute as migrations do servidor:

```
php artisan migrate --path=database/migrations/vendor/license-server
```

---

🖥 Rotas do License Server
-------------------------

[](#-rotas-do-license-server)

As rotas são protegidas e usadas para gerenciar licenças:

```
Route::prefix('license-server')->group(function () {
    Route::get('/', [LicenseServerController::class, 'createForm'])->name('server.create');
    Route::get('/generate', [LicenseServerController::class, 'generateKeyForm'])->name('generate.keys');
    Route::get('/download-key/{tipo}', [LicenseServerController::class, 'downloadKey'])->name('keys.download');

    Route::post('/license/store', [LicenseServerController::class, 'store'])->name('server.store');
    Route::post('/generate-keys', [LicenseServerController::class, 'generateKeys'])->name('keys.generate');
});
```

> **Dica:** Proteja essas rotas com autenticação para evitar acesso não autorizado.

---

⚡ Uso Básico
------------

[](#-uso-básico)

- Acesse o formulário de criação de licença:
    `http://localhost/your-app/license-server`
- Gere chaves para os clientes via formulário:
    - **Generate Key** → formulário de geração de chaves
    - **Download Key** → baixar chave pública/privada
- Armazene licenças no banco de dados usando o endpoint `/license/store`.

---

🔑 Geração e Download de Chaves
------------------------------

[](#-geração-e-download-de-chaves)

- **Chave Pública:** usada pelo License Client para validar licenças localmente.
- **Chave Privada:** usada pelo License Server para assinar licenças.

Exemplo de geração de chave via rota:

```
Route::post('/generate-keys', [LicenseServerController::class, 'generateKeys'])->name('keys.generate');
```

Exemplo de download de chave:

```
Route::get('/download-key/{tipo}', [LicenseServerController::class, 'downloadKey'])->name('keys.download');
```

---

🗂 Estrutura do Projeto
----------------------

[](#-estrutura-do-projeto)

```
license-server/
├── src/
│   ├── Helpers
│   │   ├── globalVariables.php
│   │   ├── HardwareHelper.php
│   │   └── LicenseHelper.php
│   ├── Http
│   │   ├── Controllers
│   │   │   └── LicenseServerController.php
│   │   ├── Middleware
│   │   │   ├── LicenseCheck.php
│   │   │   └── CheckLicense.php
│   │   └── ServerServiceProvider.php
│   ├── Models
│   │   └── License.php
│   ├── Services
│   │   └── LicenseService.php
│   └── ClientServiceProvider.php
├── config/
│   └── license.php
├── database/
│   └── migrations
├── resources/
│   └── views
├── routes/
│   └── web.php
├── composer.json
└── README.md

```

> **Nota:** No seu arquivo `.env` deve ter a mesma chave `APP_KEY=base64:` para reconhecer a máquina e o projeto que pretende licenciar. Caso contrário, o pacote declara invasão de licença.

---

🔐 Boas Práticas de Segurança
----------------------------

[](#-boas-práticas-de-segurança)

- Proteja as rotas do License Server com autenticação (`auth`) ou roles administrativas.
- Nunca exponha a chave privada do servidor.
- Use HMAC e criptografia para validar a integridade das licenças.
- Registre tentativas de uso de licenças inválidas para auditoria.
- Limite acesso externo apenas a IPs confiáveis, se possível.

---

📦 Ecossistema
-------------

[](#-ecossistema)

- [License Server](https://github.com/Kimossii/license-server) → Gerencia e emite licenças
- [License Client](https://github.com/Kimossii/license-client) → Valida licenças no lado do cliente

📫 Contato
---------

[](#-contato)

- **Email:**
- **LinkedIn:** [eluki-baptista](https://www.linkedin.com/in/eluki-baptista/)
- **GitHub:** [Kimossii](https://github.com/Kimossii)

NOTA
====

[](#nota)

> ### Importante:\*\* O `APP_KEY` do projeto precisa ser consistente entre ambientes.
>
> [](#importante-o-app_key-do-projeto-precisa-ser-consistente-entre-ambientes)
>
> Essa chave é usada como parte da validação de licença.
> Se não coincidir, o pacote considera a licença inválida.

> ⚠️ **Dica de Depuração:**
> Em caso de qualquer erro ou exceção, verifique os arquivos de log em `logs/ClientLicense.log` ou `logs/license_server.log` para mais detalhes.

📖 Documentação Completa
-----------------------

[](#-documentação-completa)

Para detalhes mais avançados, acesse a documentação em PDF:

👉 [Abrir Documentação ](https://drive.google.com/file/d/1g2kGkqlq8zPtCLB_5i_NfsneAtvTwh3o/view?usp=drive_link)

###  Health Score

27

—

LowBetter than 47% of packages

Maintenance56

Moderate activity, may be stable

Popularity4

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity36

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

293d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/69d63c7f0e047cae03497b05648884cb613237ef4129f3b125f5f7cdcb63ecc5?d=identicon)[Eluki Júnior](/maintainers/Eluki%20J%C3%BAnior)

---

Top Contributors

[![Kimossii](https://avatars.githubusercontent.com/u/107686134?v=4)](https://github.com/Kimossii "Kimossii (13 commits)")

---

Tags

phplaravellicenselaravel-packageactivationlicensinglicense-server

### Embed Badge

![Health badge](/badges/eluki-license-server/health.svg)

```
[![Health](https://phpackages.com/badges/eluki-license-server/health.svg)](https://phpackages.com/packages/eluki-license-server)
```

###  Alternatives

[lab404/laravel-impersonate

Laravel Impersonate is a plugin that allows to you to authenticate as your users.

2.3k18.6M64](/packages/lab404-laravel-impersonate)[imanghafoori/laravel-password-history

A package to keep a history of all password changes of users

70221.8k2](/packages/imanghafoori-laravel-password-history)[tomatophp/filament-users

Manage your users with a highly customizable user resource for FilamentPHP with integration of filament-shield and filament-impersonate

91126.7k9](/packages/tomatophp-filament-users)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
