Aller au contenu principal

Connexion & Déconnexion

Implémentez les fonctionnalités de connexion et déconnexion dans votre application.

Déclencher la Connexion

La méthode recommandée pour connecter les utilisateurs est de les rediriger vers la page de Login Universel SyAuth.

Composant Client

Utilisez le hook useSyAuth pour déclencher la connexion :

'use client';
import { useSyAuth } from '@syauth/nextjs';

export function LoginButton() {
const { loginWithRedirect, isLoading } = useSyAuth();

return (
<button onClick={() => loginWithRedirect()}>
Se connecter
</button>
);
}

Paramètres personnalisés

Vous pouvez surcharger les paramètres par défaut :

loginWithRedirect({
redirectUri: 'https://monapp.com/callback',
scope: 'openid profile email offline_access',
});

Gérer le Callback

Après la connexion, SyAuth redirige l'utilisateur vers votre application avec un code d'autorisation.

Le SDK gère automatiquement l'échange de code si vous avez configuré le composant AuthCallback.

// src/app/auth/callback/page.tsx
'use client';
import { useOAuthCallback } from '@syauth/nextjs';
// ... implémentation standard du callback (voir Quickstart)

Déconnexion

const { logout } = useSyAuth();
// ...
<button onClick={() => logout()}>Se déconnecter</button>

Routes Protégées

Approche Middleware :

// src/middleware.ts
export default withAuth({
protectedRoutes: ['/dashboard'],
});

Approche Composant :

const { isAuthenticated } = useSyAuth();
if (!isAuthenticated) return <Login />;