Client
Un client est une application OAuth 2.0 qui authentifie des utilisateurs et demande des jetons. Les clients définissent les origines autorisées, les URI de redirection et les configurations de jetons.
Schéma
interface Client {
id: string; // "cid..." - Unique identifier
resource_id: string; // Owning application or account
issuer: string;
audience: string | null;
allowed_origins: string[];
redirect_uris: string[];
allowed_scope: string | null;
default_scope: string | null;
access_token_config: TokenConfig | null;
refresh_token_config: TokenConfig | null;
id_token_config: TokenConfig | null;
}
interface TokenConfig {
expires_in: number;
cookie_options?: {
http_only?: boolean;
secure?: boolean;
same_site?: "lax" | "strict" | "none";
};
}
Propriétés
| Propriété | Type | Description |
|---|---|---|
id | string | KSUID avec préfixe cid |
resource_id | string | Application ou compte propriétaire du client |
issuer | string | Claim émetteur des jetons |
audience | string? | Claim audience des jetons |
allowed_origins | string[] | Origines CORS valides |
redirect_uris | string[] | URL de redirection OAuth |
allowed_scope | string? | Scopes autorisés pour les demandes de jeton |
default_scope | string? | Scope par défaut si non fourni |
access_token_config | object? | Paramètres d’access token |
refresh_token_config | object? | Paramètres de refresh token |
id_token_config | object? | Paramètres d’ID token |
Exemple
{
"id": "cid_2kHfPZcN9xW4mE8RtY7vB",
"resource_id": "app_root",
"issuer": "https://auth.example.com",
"audience": "https://api.example.com",
"allowed_origins": ["https://app.example.com"],
"redirect_uris": ["https://app.example.com/callback"],
"access_token_config": {
"expires_in": 3600
},
"refresh_token_config": {
"expires_in": 1209600
}
}
Liés
- Clients - Gestion des clients
- Clé client - Clés de signature
- OAuth - Flux OAuth