Taille du jeton Kerberos
Rappels
La taille du jeton Kerberos est proportionnelle au nombre de groupe auquel appartient l’utilisateur. Si ce nombre est élevé, la taille du jeton Kerberos pourrait dépasser celle du MaxTokenSize, qui fixe la valeur maximale de l’espace stockage des jetons Kerberos.
La valeur par défaut du MaxTokenSize varie en fonction des plates-formes Windows comme le montre le tableau ci-dessous :
Windows 2000 RTM/SP1 |
Windows 2000 SP2/SP3/SP4; Windows XP; Windows 2003 |
|
Valeur de MaxTokenSize par défaut, en octets : |
8 000 |
12 000 |
Note : Il est possible d’augmenter la valeur, par défaut, de MaxTokenSize en fixant la valeur désirée dans la base de registre:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\Kerberos\Parameters\
MaxTokenSize
La valeur maximum conseillée est 65 536.
Cette valeur permet à un ticket Kerberos de contenir 1600 groupes de type « domain local » ou 8000 groupes de type « global/universal ».
Impact : Si la taille du jeton Kerberos est supérieure au MaxTokenSize, l’authentification Kerberos lors de l’accès à une ressource ne fonctionne plus.
Procédure d’évaluation de la taille du jeton Kerberos
Pour de déterminer la taille d’un ticket Kerberos pour un utilisateur donné, deux méthodes peuvent être utilisées : l’estimation théorique et la mesure pratique avec l’outil Tokensz.
Estimation théorique
Elle se base sur la formule suivante:
Taille du jeton Kerberos (octets) = 1200+ 40d + 8s
- 1200 : la valeur approximativement constatée sur les environnements et qui correspond aux informations génériques d’un ticket Kerberos.
- d : correspond au nombre de groupes locaux et groupes universels définis à l’extérieur du domaine d’appartenance du compte utilisateur. Il faut également ajouter, si nécessaire, le nombre de groupes présents dans l’attribut SIDHistory de chaque groupe.
- s : correspond au nombre de groupes globaux et universels définis à l’intérieur du domaine d’appartenance du compte utilisateur.
Estimation pratique - Tokensz
Elle se fait à l’aide de l’outil Tokensz en suivant la procédure suivante :
1. Télécharger Tokensz à l’adresse suivante :
2. Ouvrir une invite de commande :
tokensz /compute_tokensize /user:nono /domain:deadbeef /password:P@ssword!
3. Relever les valeurs suivante :
· MaxTokenSize : correspond à la ligne “Current PackageInfo->MaxToken:”
· Taille courante du jeton Kerberos correspond à la ligne : “MaxToken”.
Comments
Anonymous
January 01, 2003
Comment faire tenir 1600 DomainLocal ou 8000 Global/Unerversal SID dans un champ limité a 1024 SID ? A ma connaissance : Augmenter la taille du Token permet d'approcher les 1024 SID mais pas de depasser cette limite.Anonymous
April 24, 2013
Et ce que ce comportement est paramètrable? J'ai ici un token de 9k qui est envoyé à chaque requête. On peut autoriser, mais ca génére un upload monumental pour une page dynamique (100+ elements)