Files
wiki/Catalogue-Self-Hosted/apps/app-pocket-id.md
T
2026-06-09 18:40:21 +02:00

3.6 KiB


title: Pocket ID created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, authentication, sso, oidc, mfa, 2fa] confidence: high contested: false sources: [https://selfh.st/apps/?tag=Authentication, https://github.com/pocket-id/pocket-id]

🔐 Pocket ID

Serveur OIDC minimaliste et simple à déployer, idéal pour les homelabs cherchant un SSO sans IdM complexe.

📋 Informations Générales

Attribut Valeur
Nom Pocket ID
Slug app-pocket-id
Description Serveur OIDC simple, sans base de données
Site officiel https://pocket-id.org
Repository https://github.com/pocket-id/pocket-id
Stars 8 054
Licence MIT
Langage principal Go / SvelteKit
Catégorie Authentication
Tags [catalogue, authentication, sso, oidc, mfa, 2fa]

📝 Description

Pocket ID est un serveur OIDC (OpenID Connect) minimaliste conçu pour être simple à installer et à utiliser. Le projet se distingue par son approche sans base de données : toutes les données sont stockées dans un fichier SQLite, ce qui simplifie drastiquement le déploiement et les backups.

Pocket ID supporte OIDC nativement, et propose un MFA intégré (TOTP, WebAuthn/Passkeys), la fédération d'identités (Google, GitHub, etc.), ainsi qu'une gestion basique des utilisateurs et groupes. L'interface est simple et propre (SvelteKit).

C'est l'outil parfait pour un homelab qui veut un SSO OIDC fonctionnel sans la complexité d'un Keycloak, authentik ou Authelia. Pocket ID ne fait pas d'IdM complet (pas de LDAP federation, pas d'annuaire complexe), mais c'est justement sa force : il fait une seule chose, et la fait bien. Excellent pour protéger Grafana, Portainer, Nextcloud, Immich avec OIDC.

🚀 Installation

Via Docker (recommandé)

# docker-compose.yml
services:
  pocket-id:
    image: ghcr.io/pocket-id/pocket-id:latest
    ports:
      - "1411:1411"
    environment:
      APP_URL: https://auth.example.com
      OIDC_ISSUER_URL: https://auth.example.com
      OIDC_PORT: 1411
      SESSION_COOKIE_SECRET: changeme-random-secret
      SIGNING_KEY_FILE: /data/signing.key
    volumes:
      - pocket-id-data:/app/data
volumes:
  pocket-id-data:

Installation manuelle

Télécharger le binaire depuis GitHub Releases, créer un fichier config.json, lancer ./pocket-id. Pas de dépendances externes (SQLite embarqué).

⚙️ Configuration

  • OIDC Clients : enregistrement des apps consommatrices
  • Users : gestion locale des utilisateurs (SQLite)
  • MFA : TOTP, WebAuthn (passkeys)
  • Identity Providers : Google, GitHub, etc.
  • Groupes : mapping pour RBAC basique
  • Signing Key : génération automatique, à sauvegarder

🔗 Alternatives

  • Authelia — Plus complet, mais plus complexe
  • authentik — IdM complet, plus lourd
  • Keycloak — IdM enterprise, surdimensionné pour un homelab

🔒 Sécurité

  • Activer HTTPS (Traefik, NGINX, Caddy)
  • Activer MFA (TOTP ou passkeys) dès la création du compte admin
  • Sauvegarder le signing key et le dossier /data
  • Mettre à jour régulièrement
  • Limiter l'OIDC audience aux clients nécessaires

📚 Ressources

🔗 Pages Liées