Cliente
Un Cliente es una aplicación OAuth 2.0 que autentica usuarios y solicita tokens. Define orígenes, redirects y configuración de tokens.
Schema
interface Client {
id: string; // "cid..." - Identificador único
resource_id: string; // Aplicación o cuenta dueña
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";
};
}
Propiedades
| Propiedad | Tipo | Descripción |
|---|---|---|
id | string | KSUID con prefijo cid |
resource_id | string | Aplicación o cuenta propietaria |
issuer | string | Issuer del token |
audience | string? | Audience del token |
allowed_origins | string[] | Orígenes CORS permitidos |
redirect_uris | string[] | URLs de redirect OAuth |
allowed_scope | string? | Scopes permitidos |
default_scope | string? | Scope por defecto |
access_token_config | object? | Configuración de access token |
refresh_token_config | object? | Configuración de refresh token |
id_token_config | object? | Configuración de ID token |
Ejemplo
{
"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
}
}
Relacionado
- Clientes - Gestión de clientes
- Clave de Cliente - Claves de firma
- OAuth - Flujos OAuth