---
title: "Viacero guardov — JWT for Laravel | Roundly"
description: "Viacero jwt guardov — používatelia, klienti — oddelených vlastným audience, s vlastným scope, identitou a denylistom."
url: https://roundly-consulting.com/sk/open-source/navody/jwt-for-laravel/viacero-guardov
language: sk
---

[Všetky balíky](https://roundly-consulting.com/sk/open-source.md)

[JWT for Laravel](https://roundly-consulting.com/sk/open-source/navody/jwt-for-laravel.md)

# Viacero guardov

Viacero typov účtov — napríklad users a clients, každý s vlastnou tabuľkou — môže bežať na vlastnom jwt guarde. Každý jwt guard hľadá sub cez vlastný provider, preto dajte každému guardu vlastné audience; inak sa token používateľa so sub = 5 prihlási ako klient č. 5:

```php
// config/auth.php
'guards' => [
    'users'   => ['driver' => 'jwt', 'provider' => 'users',   'audience' => env('JWT_USERS_AUDIENCE', 'app-users')],
    'clients' => ['driver' => 'jwt', 'provider' => 'clients', 'audience' => env('JWT_CLIENTS_AUDIENCE', 'app-clients')],
],
```

## Kľúče pre jednotlivé guardy

Každý guard číta tieto voliteľné kľúče z vlastného poľa auth.guards.<name>. Nenastavený alebo prázdny kľúč prevezme globálnu hodnotu, no zadaný a nepoužiteľný — nereťazcový scope, identity, ktorá nie je ClaimsAuthenticatable — vyhodí JwtMisconfigured s názvom kľúča:

| Kľúč v auth.guards.<name> | Ak chýba, platí | Typ |
| --- | --- | --- |
| `audience` | `jwt.audience` | Neprázdny reťazec; nenastavený alebo prázdny prevezme globálnu hodnotu. |
| `scope` | `jwt.guard.scope` | Reťazec alebo prípad Scope; nenastavený alebo prázdny prevezme globálnu hodnotu, nereťazcová hodnota vyhodí JwtMisconfigured. |
| `token_version` | `jwt.guard.token_version` | Invokable class-string alebo closure (nepreživie config:cache). |
| `check_denylist` | `jwt.guard.check_denylist` | Bool; rozumie env zápisom true/false, 1/0, on/off a yes/no. Nenastavený alebo prázdny prevezme globálnu hodnotu — prázdna hodnota nikdy neznamená false. Nerozpoznaná hodnota vyhodí JwtMisconfigured — globálnu hodnotu nikdy neprevezme. |
| `identity` | `jwt.guard.identity` | Class-string triedy ClaimsAuthenticatable; nenastavený alebo prázdny prevezme globálnu hodnotu, čokoľvek iné vyhodí JwtMisconfigured. Ak chýba na oboch úrovniach, TokenUser. |

## Vydávanie a čítanie pre konkrétny guard

Vydajte token pre konkrétny guard, overte ho a čítajte jeho nastavenia cez Jwt::guard($name):

```php
$clients = Jwt::guard('clients');

$clients->mintAccessToken(AccessTokenRequest::for($client->id)); // aud = 'app-clients'
$clients->mint((string) $client->id, 'access', ttl: 900);        // any scope, for the guard's audience
$clients->verify($jwt);      // a users token fails here (ClaimMismatch)
$clients->audience();        // 'app-clients' — auth.guards.clients.audience, else jwt.audience
$clients->settings();        // JwtGuardSettings: guard, audience, scope, checkDenylist, identity, tokenVersion
$clients->claims();          // that guard's verified claims, or null — never another guard's
```

Jwt::guard() vyhodí JwtMisconfigured pre guard, ktorý nie je jwt guard, a mintAccessToken() odmietne request, ktorý už uvádza iné audience, namiesto toho, aby ho potichu presmeroval. jwt.audience zostáva povinné — je to predvolená hodnota pre každý guard bez vlastného audience. Token vydaný pre audience jedného guardu dostane na každom inom guarde 401.

## Prejavte lásku k open source

Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.

[Ďalšie spôsoby podpory vrátane kryptomien](https://roundly-consulting.com/sk/podporte-nas.md)

Odoslaním daru súhlasíte s našimi [podmienkami prijímania darov](https://roundly-consulting.com/sk/podmienky-darov.md).

[Podporte našu open-source prácu (otvorí sa v novej karte)](https://donate.stripe.com/dRmeVe8FX5PF1Qd9pXcEw00) [Pridajte sa k nám na Patreone (otvorí sa v novej karte)](https://www.patreon.com/cw/roundly)

## Chcete to zabudovať do svojho produktu?

Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.

[Ponuka do 48 hodín](https://roundly-consulting.com/sk/kontakt.md) [Prezrieť všetky balíky](https://roundly-consulting.com/sk/open-source/navody/jwt-for-laravel.md)
