Qu’est-ce que DAT ? ​

DAT (Distributed Access Token) est une spécification de jeton d’accès utilisée par des services d’émission et de vérification qui partagent les mêmes certificats. La vérification ne nécessitant ni requête supplémentaire au service d’émission ni magasin de sessions central, les résultats d’authentification peuvent circuler entre des services plus faiblement couplés.

expire
uint64
.
cid
uint64
.
plain
bytes
.
secure
bytes
.
signature
bytes
Les champs séparés par des points forment un DAT unique.

Composants ​

DAT ​

Chaîne qu’un utilisateur ou un service envoie avec une requête. Elle contient une date d’expiration et un ID de certificat, et peut transporter des données publiques comme chiffrées.

Certificat ​

Contient les algorithmes, les clés et les plages temporelles nécessaires à la création et à la vérification des DAT. L’ID du certificat, cid, est immuable ; utilisez un nouveau cid lors de la rotation des clés.

Gestionnaire ​

Le gestionnaire de la bibliothèque cliente stocke les certificats, crée les DAT avec un certificat actuellement utilisable pour l’émission et vérifie chaque DAT avec le certificat correspondant à son cid.

DAT CMS ​

Serveur facultatif qui crée, stocke et distribue les certificats aux services. Il peut fournir des certificats complets aux services d’émission et des certificats verify-only aux services qui se limitent à vérifier les jetons.

Émission et vérification ​

person Utilisateur
workspace_premium DAT CMS
Gestion des certificats
Synchronisation fondée sur les versions
login Service d’émission
apps Service de vérification

Le service d’émission choisit les données plain et secure, puis crée un DAT. Le service de vérification contrôle la date d’expiration, la signature et le ciphertext avant de transmettre les deux zones de données à l’application. Comme plain est signé mais non chiffré, n’y placez aucun secret ni donnée personnelle.

Pourquoi la vérification fonctionne encore après un changement de certificat ​

Dès qu’un nouveau certificat devient utilisable pour l’émission, les DAT suivants emploient son nouveau cid. Le certificat précédent reste disponible pour la vérification jusqu’à l’écoulement du TTL de tous les DAT qu’il a émis. La rotation des clés et la période de vérification des jetons existants sont ainsi gérées ensemble.

Cas d’usage de DAT ​

  • Environnements où l’authentification et les fonctions applicatives sont gérées par des services distincts
  • Environnements où plusieurs runtimes émettent ou vérifient le même format de jeton
  • Systèmes qui doivent transporter des données d’autorisation à courte durée de vie sans consultation d’une session centrale
  • Systèmes qui doivent séparer les informations publiques de routage des données protégées dans un même jeton

DAT ne définit pas la politique d’autorisation elle-même. La validité d’un DAT et la décision de l’application d’autoriser une requête sont deux questions distinctes.

Étapes suivantes ​