PHPackages                             felipemenezesdm/auth-server-connect-laravel - 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. felipemenezesdm/auth-server-connect-laravel

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

felipemenezesdm/auth-server-connect-laravel
===========================================

Biblioteca Laravel para conexão com o Auth Server

v1.0.0(3y ago)012PHPPHP ^8.1

Since Apr 10Pushed 3y ago1 watchersCompare

[ Source](https://github.com/FelipeMenezesDM/auth-server-connect-laravel)[ Packagist](https://packagist.org/packages/felipemenezesdm/auth-server-connect-laravel)[ RSS](/packages/felipemenezesdm-auth-server-connect-laravel/feed)WikiDiscussions develop Synced 1mo ago

READMEChangelog (1)Dependencies (4)Versions (3)Used By (0)

Auth Server Connect
===================

[](#auth-server-connect)

Biblioteca de integração com o Auth Server para geração de tokens de acesso ou validação de tokens de acesso em rotas autenticadas.

Tópicos
-------

[](#tópicos)

- [Instalação](#instala%C3%A7%C3%A3o)
- [Geração de tokens](#gera%C3%A7%C3%A3o-de-tokens)
    - [Configuração básica](#configura%C3%A7%C3%A3o-b%C3%A1sica)
    - [Provedores](#provedores)
- [Validação de tokens](#valida%C3%A7%C3%A3o-de-tokens)
- [Propriedades de configuração](#propriedades-de-configura%C3%A7%C3%A3o)

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

[](#instalação)

Execute o comando abaixo para instalar a biblioteca:

```
composer require felipemenezesdm/auth-server-connect-laravel:^1.0

```

No arquivo **app &gt; app &gt; Http &gt; Kernel.php**, informe o seguinte valor `\App\Http\Middleware\AuthServerConnect::class`:

```
protected $middlewareGroups = [
  'web' => [
      // [...],
      \FelipeMenezesDM\AuthServerConnectLaravel\Middleware\AuthServerConnect::class,
  ],

  'api' => [
      // [...],
      \FelipeMenezesDM\AuthServerConnectLaravel\Middleware\AuthServerConnect::class,
  ],
];
```

Geração de tokens
-----------------

[](#geração-de-tokens)

### Configuração básica

[](#configuração-básica)

Após a instalação da lib, é possível utilizar o atributo #\[AuthServerConnection\] nos controladores da aplicação:

```
#[AuthServerConnection]
class MyController extends Controller
{
    public static ?AuthServerToken $authServerToken;
}
```

```
AUTH_SERVER_PROVIDER=environment
AUTH_SERVER_URI=http://localhost:1080/api/v1
client_id=9835e498-eb18-4d7a-8e8e-230b2190df1f
client_secret=51469bf9-081f-4023-a391-b94877bb5b1b
```

Vale destacar que uma propriedade estática do tipo AuthServerToken deve ser criada no controlador, conforme o exemplo acima. Ela será o objeto de manipulação do token.

### Provedores

[](#provedores)

Atualmente, a biblioteca disponibiliza três formas para obter as credenciais para geração de tokens no Auth Server: **environment**, **aws** e **gcp**.

#### Environment

[](#environment)

As credenciais podem ser definidas por meio de variáveis de ambiente no sistema.

```
AUTH_SERVER_PROVIDER=environment
AUTH_SERVER_URI=http://localhost:1080/api/v1
```

```
export client_id=9835e498-eb18-4d7a-8e8e-230b2190df1f
export client_secret=51469bf9-081f-4023-a391-b94877bb5b1b
```

#### AWS

[](#aws)

As credenciais podem ser obtidas a partir das Secrets da Amazon Web Services.

```
AUTH_SERVER_PROVIDER=aws
AUTH_SERVER_URI=http://localhost:1080/api/v1
AUTH_SERVER_SECRET_NAME=my-secret-name
AUTH_SERVER_REGION=us-east-1
```

#### GCP

[](#gcp)

As credenciais podem ser obtidas a partir das Secrets do Google Cloud Platform.

```
AUTH_SERVER_PROVIDER=gcp
AUTH_SERVER_URI=http://localhost:1080/api/v1
AUTH_SERVER_SECRET_NAME=my-secret-name
AUTH_SERVER_PROJECT_ID=gcp-project
```

Validação de tokens
-------------------

[](#validação-de-tokens)

Para validar um token, você pode configrar o atributo #\[AuthServerValidation\] no método da rota e/ou no próprio controlador.

Usando a construção abaixo, a autenticação será implementada para todas as rotas do controlador:

```
#[AuthServerValidation(scopes: ['my-scope'])]
class MyController extends Controller
{
    #[Route(name: 'my-route', path: '/api/v1')]
    public function myRoute() : void
    {
    }
}
```

Usano a construção abaixo, a autenticação será implementada apenas para as rotas individualmente definidas:

```
class MyController extends Controller
{
    #[AuthServerValidation(scopes: ['my-scope'])]
    #[Route(name: 'my-route', path: '/api/v1')]
    public function myRoute() : void
    {
    }
}
```

Usando a construção abaixo, a autenticação será implementada para todos as rotas do controlador, porém os escopos de acesso serão mesclados. Neste exemplo, todos as rotas terão o escopo básico "my-scope", porém a rota "/api/v1/{id}" terá o escopo "my-scope-2" como adicional:

```
#[AuthServerValidation(scopes: ['my-scope'])]
class MyController extends Controller
{
    #[AuthServerValidation(scopes: ['my-scope-2'])]
    #[Route(name: 'my-route', path: '/api/v1/{id}')]
    public function myRoute() : void
    {
    }

    #[Route(name: 'my-route2', path: '/api/v1')]
    public function myRoute2() : void
    {
    }
}
```

Lembrando que o parameter *scopes* será utilizado para identificar se o token passado para a requisição possui o (s) escopo (s) necessário (s) para acesso da rota.

Propriedades de configuração
----------------------------

[](#propriedades-de-configuração)

Descrição de todas as propriedades de configuração disponíveis para a biblioteca.

- **AUTH\_SERVER\_ENABLED:**
    - **tipo:** *boolean*
    - **descrição:** definir se as validações estão habilitadas ou desabilitadas.
    - **obrigatório:** sim
    - **padrão:** true
- **AUTH\_SERVER\_NAME:**
    - **tipo:** *string*
    - **descrição:** nome de identificação do conector
    - **obrigatório:** não
    - **padrão:** *null*
- **AUTH\_SERVER\_URI:**
    - **tipo:** *string*
    - **descrição:** URL padrão para o servidor do Auth Server
    - **obrigatório:** sim
- **AUTH\_SERVER\_REDIRECT\_URI:**
    - **tipo:** *string*
    - **descrição:** URL de redirecionamento do cliente
    - **obrigatório:** não
    - **padrão:** *null*
- **AUTH\_SERVER\_SCOPES:**
    - **tipo:** *string*
    - **descrição:** escopos para geração do token, seperados por vírgula. Ex: scope1,scope2,scope2
    - **obrigatório:** não
    - **padrão:** null
- **AUTH\_SERVER\_TIMEOUT:**
    - **tipo:** *integer*
    - **descrição:** tempo limite de resposta para o servidor do Auth Server em milissegundos.
    - **obrigatório:** não
    - **padrão:** 300
- **AUTH\_SERVER\_PROVIDER:**
    - **tipo:** *string*
    - **descrição:** tipo de provedor de credencials. Atualmente disponíveis: **environment**, **aws** e **gcp**
    - **obrigatório:** sim
    - **padrão:** environment
- **AUTH\_SERVER\_PROJECT\_ID**
    - **tipo:** *string*
    - **descrição:** exclusivo para o provedor **gcp**, para identificar o projeto do qual as credencials serão obtidas.
    - **obrigatório:** sim, quando o provedor for **gcp**
- **AUTH\_SERVER\_REGION:**
    - **tipo:** *string*
    - **descrição:** exclusivo para o provedor **aws**, para identificar a região padrão do cliente.
    - **obrigatório:** sim, quando o provedor for **aws**
- **AUTH\_SERVER\_CLIENT\_ID\_KEY:**
    - **tipo:** *string*
    - **descrição:** definir a chave para o ID do cliente no payload de secrets ou nas variáveis de ambiente. Neste caso, esta configuração é válida para os provedores **aws**, **gcp** e **environment**. Por exemplo, se o client-id-key for definido como "my-client-id" e o provedor for "environment", será necessário criar uma variável de ambiente chamada "my-client-id" para armazenar o client-id que será usado para geração de tokens.
    - **obrigatório:** sim
    - **padrão:** client\_id
- **AUTH\_SERVER\_CLIENT\_SECRET\_KEY:**
    - **tipo:** *string*
    - **descrição:** definir a chave para a secret do cliente no payload de secrets ou nas variáveis de ambiente. Neste caso, esta configuração é válida para os provedores **aws**, **gcp** e **environment**. Por exemplo, se o client-secret-key for definido como "my-client-secret" e o provedor for "environment", será necessário criar uma variável de ambiente chamada "my-client-secret" para armazenar o client-secret que será usado para geração de tokens.
    - **obrigatório:** sim
    - **padrão:** client\_secret
- **AUTH\_SERVER\_END\_POINT:**
    - **tipo:** *string*
    - **descrição:** quando o provedor for igual a **aws**, este parâmetro pode ser configurado para definir o endpoint de onde serão obtidas as credenciais. É bastante útil para quando se está utilizando o LocalStack, por exemplo.
    - **obrigatório:** não
- **AUTH\_SERVER\_SECRET\_NAME:**
    - **tipo:** *string*
    - **descrição:** definir o nome da secret onde serão obtidas as credenticiais. Válido para os provedores **aws** e **gcp**.
    - **obrigatório:** sim, quando o provedor for **aws** ou **gcp**

###  Health Score

24

—

LowBetter than 32% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity5

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity54

Maturing project, gaining track record

 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

1129d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/770547528571055d38d45b3c6353ae27f83e04b485d4a9319d53293986d0d6de?d=identicon)[FelipeMenezesDM](/maintainers/FelipeMenezesDM)

---

Top Contributors

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

### Embed Badge

![Health badge](/badges/felipemenezesdm-auth-server-connect-laravel/health.svg)

```
[![Health](https://phpackages.com/badges/felipemenezesdm-auth-server-connect-laravel/health.svg)](https://phpackages.com/packages/felipemenezesdm-auth-server-connect-laravel)
```

###  Alternatives

[directorytree/ldaprecord-laravel

LDAP Authentication &amp; Management for Laravel.

5682.0M15](/packages/directorytree-ldaprecord-laravel)[roots/acorn

Framework for Roots WordPress projects built with Laravel components.

9682.1M97](/packages/roots-acorn)[laravel/vapor-cli

The Laravel Vapor CLI

31310.7M8](/packages/laravel-vapor-cli)[josiasmontag/laravel-recaptchav3

Recaptcha V3 for Laravel package

2641.6M2](/packages/josiasmontag-laravel-recaptchav3)[laravel-zero/framework

The Laravel Zero Framework.

3371.4M369](/packages/laravel-zero-framework)[torchlight/torchlight-laravel

A Laravel Client for Torchlight, the syntax highlighting API.

120452.8k11](/packages/torchlight-torchlight-laravel)

PHPackages © 2026

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