Retours tests 5.2.0-beta

Ok merci pour les explications.
Du coup, je ne sais pas dire si les Grant associés aux tokens externes sont purgés ou pas mais a priori cela n’a pas d’incidence sur le Heap interne… La seule partie visible concerne les compteurs de sessions “API”.

J’avoue ne m’être pas penché de près sur la manière dont est calculé compteur et la liste de “sessions” affiché dans la page d’accueil de l’exploitation dans la UI.

Par contre dans le health check il y a la valeur APIGrantCache qui correspond, elle, exactement à la taille du cache des grants API = le nombre de grants courant en mémoire dans ce cache.

Si les politiques d’éviction de ce cache fonctionnent correctement il n’y a pas de raison que ce nombre dépasse la valeur du param système USERTOKENS_CACHE_SIZE (valeur par défaut = 1000). Je pense que cette limite est checkée par le cache au moment de la création d’une nouvelle entrée (il doit alors supprimer l’entrée la plus ancienne pour faire de la place à la nouvelle ou dans le genre). Je ne sais pas trop comment et quand le cache déclenche les évictions sur la base de l’expiration mais celle-ci est forcée applicativement lorsqu’on détecte un appel avec un token expiré et à chaque login ou du logout explicite.

L’autre truc à surveiller c’est les sessions Tomcat (valeur ServerActiveSessions dans le health check) => en 5.2+ il n’y a plus ni valve ni session “technique” API le nombre de sessions Tomcat doit donc rester stable et correspondre au nombre de sessions UI.

J’ai fait qques tests sur l’éviction liée à la taille max du cache en mettant USERTOKENS_CACHE_SIZE à une valeur basse. Au delà de ce nombre, la création d’un nouveau grant déclenche bien l’éviction d’un ancien grant (et celui-ci se recrée bien si le token est réutilisé en en évinçant un autre).

Bref même si l’éviction sur expiration se fait “à retardement”, il y a tout de même ce garde fou lié à la taille max du cache (contrairement à la 5.1)

NB: J’ai juste amélioré la trace log qui indique cette éviction ce sera dispo dans le build de ce soir

Bonjour David, si ce paramètre n’est pas défini, que se passe-t-il ? (en 5.1 et en 5.2)

Problème du matin (je ne sais pas si c’est lié à un nouveau build ou à autre-chose du côté de notre IDP)

Lors de la connexion OIDC, le login est inopérant avec le message “No login from OpenIDConnect renault”.

Dans le build d’hier soir il y a effectivement eu qques changements autour du flow OIC backportés depuis la 5.3, je regarde.

Sinon pour répondre à la question sur USERTOKENS_CACHE_SIZE => en 5.1 ça n’existe pas, en 5.2+ s’il n’est pas défini la valeur par défaut est 1000

OK vu. Un bête raté de backport… c’est rebuildé (et j’ai relancé l’upgrade auto sur vos instances SIM)
Désolé.

Sinon, dans ce nouveau build, la gestion des compteurs de “sessions” a été améliorée pour séparer les comptages API et UI et les nouveaux params système ont été ajoutés avec leur valeur par défaut.

1 Like

Bonjour,

l’arrivée de la 5.2 se précise et je reprends les tests…

J’ai ce matin une régression (je ne sais pas depuis quand) sur la gestion des tokens API :

2022-03-21 09:06:01,806|SIMPLICITE|ERROR||http://renault.simplicite.io:10028||ERROR|system|com.simplicite.webapp.servlets.api.ExternalObjectServlet|service||Event: Authentication error: Expired token
2022-03-21 09:06:01,805|SIMPLICITE|ERROR||http://renault.simplicite.io:10028||ECORED0001|system|com.simplicite.webapp.tools.ServletTool|createAPIGrantFromToken||Error Token is expired vs the token expiry date got from the token info 2022-03-21 09:36:00
[Platform]
Status=OK
Version=5.2.0-beta
BuiltOn=2022-03-20 23:13
Git=prerelease/22bb53f3a71f7d9fe85ec43071a2bbd3d51f84ea
Encoding=UTF-8
EndpointIP=149.202.171.75
EndpointURL=http://renault.simplicite.io:10028
TimeZone=Europe/Paris
SystemDate=2022-03-21 09:10:33

Voici le token fourni lors de l’appel :

{
  "iss": "https://idp2.renault.com/nidp/oauth/nam",
  "jti": "2ae36cf7-e3fa-45c4-8453-2bbda0868769",
  "aud": "539f6e6b-30a0-453a-8757-73453007516a",
  "exp": 1647851761,
  "iat": 1647849961,
  "nbf": 1647849931,
  "sub": "39613763383938322d66646366313165372d38353032396439342d6233373737633866",
  "_pvt": "7TtGm05liHan4sPKoSGxagZRNWQIZv7rySeQHZGUn1vfKeX7Lu8aSnIV7Rue0sSmVBDvcF+m3YED78AXVZ11Sepj1gUX3DQKwVGH1KxUNFIVHBoy6fzFCXBTZTTuzCV5IGJr8m5Yrt8gn6viyl//mU6TuI0QPXk4ier5+nK/g7EuaKfvjBco461lEtfR6xDPdlMSfDCpYlktIwaozTbtL8o3+oiE5Kaq+3k/RX4Poab/L9la7SG2YyuVHvD2i8T8qZINR+rypBhQEbi1jrfuZrsmdLLYYQgYGmlQkdTAN6+Kg2JQ1c7xiERPJ/7ob1ZNc3BS9TjOJR+DQxO74Wutu309MKeqddHt+iy6GgF3HrpEBQ8adzr4SY50/knqeEYU+1fp1eGy3/QmaDtJYgzLHvHJyx+WeCKR56iVfA+8yDd8ar1ifmoCbrDciHSPiThRDMIOfmJ8XR4OMDqF/CPpcCwTMBj35bz9helI+lZGfWKPW8ahwQB/MCkZZlTRmezOybDiF9wLc92LUv11S4e3bjFgnUJBcrQ2aRtpZU7+ErA=.1",
  "scope": [],
  "_target": "IdentityProvider"
}

Pour être sûr du cas de test peux tu m’indiquer la config AUTH_PROVIDERS et éventuels OAUTH2_* ? Merci

[
    { "name": "simplicite", "type": "internal", "visible": true },
    {
        "name": "renault",
        "type": "oauth2",
        "label": "Sign in with renault",
        "sync": true,
        "client_id": "xxxxxxx",
        "client_secret": "xxxxxxx",
        "scopes": "openid arca role-bca-irn68521",
        "jwt_issuer": "https://idp2.renault.com/nidp/oauth/nam",
        "authorize_url": "https://idp2.renault.com/nidp/oauth/nam/authz",
        "token_url": "https://idp2.renault.com/nidp/oauth/nam/token",
        "tokeninfo_url": "https://idp2.renault.com/nidp/oauth/nam/tokeninfo",
        "tokeninfo_mappings": {
            "login": "user_id"
        },
        "userinfo_url": "https://idp2.renault.com/nidp/oauth/nam/userinfo",
        "userinfo_mappings": {
            "login": "uid",
            "firstname": "firstname",
            "latstname": "lastname",
            "email": "mail",
            "phone": "phone"
        }
    }
]

OK, peux tu activer le log event DAUTHSC001 et me fournir les logs correspondantes à ton pb.

S’il s’agit de l’évènement DAUTHCS001 il est déjà activé mais ne produit aucune log :

Dois-je par ailleurs modifier le niveau de trace de l’instance ?
Si oui comment ?

Ce que je veux dire par “activer” ce log event c’est qu’il faut le passer au niveau “info” et recharger les log events.

Ok, c’est fait…

voici les logs produites dans la log système :

2022-03-21 10:20:21,914|SIMPLICITE|INFO||http://renault.simplicite.io:10028||DAUTHCS001|system|com.simplicite.webapp.tools.ServletTool|validateJWTToken||Authentication debug: Token expiry date from the JWT token is [2022-03-21 10:50:20]
2022-03-21 10:20:21,913|SIMPLICITE|INFO||http://renault.simplicite.io:10028||DAUTHCS001|system|com.simplicite.webapp.tools.ServletTool|getAPIGrant||Authentication debug: Token from HTTP request = [eyJraWQiOiIxNzY3IiwidHlwIjoiSldUIiwiYWxnIjoiUlMyNTYifQ.eyJpc3MiOiJodHRwczovL2lkcDIucmVuYXVsdC5jb20vbmlkcC9vYXV0aC9uYW0iLCJqdGkiOiJiOWQwZTNhYS00ZmY5LTRhYjQtYjg0Zi1kNDExMzBiZWI1OTEiLCJhdWQiOiI1MzlmNmU2Yi0zMGEwLTQ1M2EtODc1Ny03MzQ1MzAwNzUxNmEiLCJleHAiOjE2NDc4NTYyMjAsImlhdCI6MTY0Nzg1NDQyMCwibmJmIjoxNjQ3ODU0MzkwLCJzdWIiOiIzOTYxMzc2MzM4MzkzODMyMmQ2NjY0NjM2NjMxMzE2NTM3MmQzODM1MzAzMjM5NjQzOTM0MmQ2MjMzMzczNzM3NjMzODY2IiwiX3B2dCI6IkZTaE9yOXZZQU9iV0VKakVhanhESHJwa3BPZ1ZNVWhta0E4Wit2Y1FUS2hQcW9JaVJIcmlPWUQ2SmliNml6OFNtSWllTHpzUlZEVk50YzkyNkxIb2xMRzYwcE16Z0NCTGcxMUwwSE14d0tZazNseFN1ZjdCZXNqS3d1a2hXZ25XVWV0TGlieWU1MDVlY1VGcEN5RTlCbnpoOFlxZFljUHpSeHIrYTcyNG1VaHhBVDZISlN1Z1JqdFZjWDB6M204WkZQMWQrNlY5ZU9lQ3NmUVlKNFZ0Zk9vejlhY2FnV2RhbWpBbWZIdHMvNytZRnNvbkd1c2dacEZSeFZHUktXdU83K2E5ZFNzbXNNMkRtbmFXeGlQT1BHR0NQQWxLQlpYTFBMOHpWNjJoSXJ5S2thb1pyREt0MjQ5YTNLZytnUndqS2RqK1libEhrY096SDdueVlMUnphN3hpbkJWd1h3QXpXemRueXRVV04xSWFUN0s2T2RXMWhwaXU3VE5KVnc0MTh1dXBFZDBTNjdXbUI2ZUw2MU96MXhVdWdZQlRqcU80TElPcnJWQnpOenhNQVdjTWYwK2JZQlMzbVVReTFTMjJFeVVJSUJmSzF1QlB6SDVqekVDYTgrbVJoSGtTaWhlTnFEdWlIdS84dnFvZVE2RDhRUG9PSk5JdWFFNmdMdWdBY0JlSnhDRkhuSFR3bXYrYUh4VG9KeEVjZXFRVkhRc0ZFQzNWaEM4QVlzST0uMiIsInNjb3BlIjpbXSwiX3RhcmdldCI6IklkZW50aXR5UHJvdmlkZXIifQ.MLrtlwWF5dlBTqU89ylaSopcZ92H2viZUBUt-97RRZk_DtQ3pRt1p9skin4IoMAOMlDuRuX0jRbrpLJ0SBkKuQLIxoKk_bvAAhjKxMOf2VhD8eJ-Sgo74DS-jXvQDhtBCogqhdJYX88q6PX1BGUV1EBh9xV7mipyjuXuefImufEfL8O8Y92Z0_HBm_3UiqTWhK92Vu4KkMtTWkyfPPyknuoEyfDg7Jg3eQfAxpp7W0dDLFDOq7tNb7-HkWv9yg6dDtqnc1ZMXIkN8OgWFqSNSpXzg1e-RB6jK__vgb3CZNny5tC7EyInYXVtZcPVu0b-xDHUiusuPS7UeHgrTix3fQ]

Je ne retrouve aucune log associée à l’event :

Ce point de trace est sensé donner de nombreuses infos au moment de la 1ère utilisation du token (appel du token info, etc.), c’est ces traces qui m’intéressent pour les comparer à celles de mon cas de test que je pense être équivalent = token externe validé par appel d’une URL de token info qui retourne une durée restante de validité (“expires in”) et pas une date de validité (“expire at”).

La combinatoire de cas est importante, j’ai besoin de savoir dans quel cas on est ici.

NB: Les logs associées à l’event c’est uniquement si on parle de logs en base => celui là ne doit pas être mis en base

Ok, je redéploie l’instance pour m’assurer de repartir “à vide” (cd. sessions API)

Normalement il suffit de faire un appel avec un nouveau token inconnu de l’instance, mais OK pour repartir à vide

Ok, dsl j’ai été interrompu dans mes tests…

Voici les logs obtenues suite au redéploiement :

2022-03-21 11:22:37,105|SIMPLICITE|ERROR||http://renault.simplicite.io:10028||ERROR|system|com.simplicite.webapp.servlets.api.ExternalObjectServlet|service||Event: Authentication error: Expired token
2022-03-21 11:22:37,105|SIMPLICITE|ERROR||http://renault.simplicite.io:10028||ECORED0001|system|com.simplicite.webapp.tools.ServletTool|createAPIGrantFromToken||Error Token is expired vs the token expiry date got from the token info 2022-03-21 11:52:35
2022-03-21 11:22:37,011|SIMPLICITE|INFO||http://renault.simplicite.io:10028||DAUTHCS001|system|com.simplicite.webapp.tools.ServletTool|validateJWTToken||Authentication debug: Token expiry date from the JWT token is [2022-03-21 11:52:36]
2022-03-21 11:22:36,976|SIMPLICITE|INFO||http://renault.simplicite.io:10028||DAUTHCS001|system|com.simplicite.webapp.tools.ServletTool|getAPIGrant||Authentication debug: Token from HTTP request = [eyJraWQiOiIxNzY3IiwidHlwIjoiSldUIiwiYWxnIjoiUlMyNTYifQ.eyJpc3MiOiJodHRwczovL2lkcDIucmVuYXVsdC5jb20vbmlkcC9vYXV0aC9uYW0iLCJqdGkiOiIyMzE1MzVjNy0xODFkLTQ4MjMtOWQ3ZS0zZGJlYTNiNDE3MzgiLCJhdWQiOiI1MzlmNmU2Yi0zMGEwLTQ1M2EtODc1Ny03MzQ1MzAwNzUxNmEiLCJleHAiOjE2NDc4NTk5NTYsImlhdCI6MTY0Nzg1ODE1NiwibmJmIjoxNjQ3ODU4MTI2LCJzdWIiOiIzOTYxMzc2MzM4MzkzODMyMmQ2NjY0NjM2NjMxMzE2NTM3MmQzODM1MzAzMjM5NjQzOTM0MmQ2MjMzMzczNzM3NjMzODY2IiwiX3B2dCI6InlKWW8vM2xyeWl2QzQ2a3VqM1p0Um85YnhxSEJBSDh3S1JsbVZOR1o3TTVqN2pNbHU2ckp3Nk4weFJWTUtpdGlhcFNaNjNVbmNhNVdqUENkbjNNM3VFWUpnUjJoMFEzV3ZmRmFzWE5TSUJ5SFgxd3lzUE1HKzJJNnN1eTZONDduNElPcXVCeDFIUVBZRUljenNlUGZGWWUxRnMxUWFxMVhDQ0lnVE11eGRuZ2h3S0VsdklPTi85RlJKTkg4bGc0eXFHTkpNL09BWC8zaEdDb203NTdpUnlFaVhCZnFYMDNiWEtIZENGVVlta0FKWjdQWU1LMnI5NHl0MVE5VzRXcUlPTlM4amo4WkEyei9aeSsrMHFjckx0cTV5ZmVleEZvYktvcGs3eEtvUGV6Zk5sK29obW94N2U3cmJVMTFZQVpRWStRenlxMmxRcFpNSmVXZ3V5VFdQWmx0ZTdHb2U5VzBtU0U3U241UGlTUWFpamYvdUZJcElJMkZhU2FVZGdRdTByOWNsUm5OcngxaytRN3pUTllWN2doOHhUVzRkSkNCdTE0NnZuMkczdTJGV2YvVFV2TE05ZWhBNndTSGE1VXZwd0NoWTcwNDArUmp5R1JoeXNPMDNSWnNrclhzR2dSaHVzTDArcWUzZ01hVmNLMVUzR2F4N01LK1lTWld2bmF1Q3EzVGJscXNWM0c5TzhKVG9RNTdLekZnblVKQmNyUTJhUnRwWlU3K0VyQT0uMSIsInNjb3BlIjpbXSwiX3RhcmdldCI6IklkZW50aXR5UHJvdmlkZXIifQ.MstIL758rs-B1LiaJuGK6CmZHTRJYmAiA0jlD513XkUTXxKLeczcTXQ7KRJN_WvROAQ8Ymo0HwniYBWVchghwgs6uNB2i7-v9Ex-Mu7K0xXHVxBNpxVBCkFm5oFiwBrNN4WHCRYGvcrKAz3rrUUF9lqf8M8kKxpR9slg0G2nEHocwF1AyJhCEhfqDPHfDxu3hLOUNZH8p5P1UlgW9lC31mJAGzltGwaNnJQ7kOJFFpy_ezy4rqWitLTxfTSZ-o6GtIm1GQpAwpLVL-QeiN__o43g8PB55yVvMf1QpVPxHtJFNqIs_2z7iU3ipPTszw7yOEhncf9xI-LLNA4b9VEBOw]
2022-03-21 11:22:36,903|SIMPLICITE|ERROR||http://renault.simplicite.io:10028||ERROR|system|com.simplicite.webapp.servlets.api.ExternalObjectServlet|service||Event: Authentication error: Expired token
2022-03-21 11:22:36,902|SIMPLICITE|ERROR||http://renault.simplicite.io:10028||ECORED0001|system|com.simplicite.webapp.tools.ServletTool|createAPIGrantFromToken||Error Token is expired vs the token expiry date got from the token info 2022-03-21 11:52:35
2022-03-21 11:22:36,850|SIMPLICITE|INFO||http://renault.simplicite.io:10028||DAUTHCS001|system|com.simplicite.webapp.tools.ServletTool|validateJWTToken||Authentication debug: Token expiry date from the JWT token is [2022-03-21 11:52:36]
2022-03-21 11:22:36,797|SIMPLICITE|INFO||http://renault.simplicite.io:10028||DAUTHCS001|system|com.simplicite.webapp.tools.ServletTool|getAPIGrant||Authentication debug: Token from HTTP request = [eyJraWQiOiIxNzY3IiwidHlwIjoiSldUIiwiYWxnIjoiUlMyNTYifQ.eyJpc3MiOiJodHRwczovL2lkcDIucmVuYXVsdC5jb20vbmlkcC9vYXV0aC9uYW0iLCJqdGkiOiIyMzE1MzVjNy0xODFkLTQ4MjMtOWQ3ZS0zZGJlYTNiNDE3MzgiLCJhdWQiOiI1MzlmNmU2Yi0zMGEwLTQ1M2EtODc1Ny03MzQ1MzAwNzUxNmEiLCJleHAiOjE2NDc4NTk5NTYsImlhdCI6MTY0Nzg1ODE1NiwibmJmIjoxNjQ3ODU4MTI2LCJzdWIiOiIzOTYxMzc2MzM4MzkzODMyMmQ2NjY0NjM2NjMxMzE2NTM3MmQzODM1MzAzMjM5NjQzOTM0MmQ2MjMzMzczNzM3NjMzODY2IiwiX3B2dCI6InlKWW8vM2xyeWl2QzQ2a3VqM1p0Um85YnhxSEJBSDh3S1JsbVZOR1o3TTVqN2pNbHU2ckp3Nk4weFJWTUtpdGlhcFNaNjNVbmNhNVdqUENkbjNNM3VFWUpnUjJoMFEzV3ZmRmFzWE5TSUJ5SFgxd3lzUE1HKzJJNnN1eTZONDduNElPcXVCeDFIUVBZRUljenNlUGZGWWUxRnMxUWFxMVhDQ0lnVE11eGRuZ2h3S0VsdklPTi85RlJKTkg4bGc0eXFHTkpNL09BWC8zaEdDb203NTdpUnlFaVhCZnFYMDNiWEtIZENGVVlta0FKWjdQWU1LMnI5NHl0MVE5VzRXcUlPTlM4amo4WkEyei9aeSsrMHFjckx0cTV5ZmVleEZvYktvcGs3eEtvUGV6Zk5sK29obW94N2U3cmJVMTFZQVpRWStRenlxMmxRcFpNSmVXZ3V5VFdQWmx0ZTdHb2U5VzBtU0U3U241UGlTUWFpamYvdUZJcElJMkZhU2FVZGdRdTByOWNsUm5OcngxaytRN3pUTllWN2doOHhUVzRkSkNCdTE0NnZuMkczdTJGV2YvVFV2TE05ZWhBNndTSGE1VXZwd0NoWTcwNDArUmp5R1JoeXNPMDNSWnNrclhzR2dSaHVzTDArcWUzZ01hVmNLMVUzR2F4N01LK1lTWld2bmF1Q3EzVGJscXNWM0c5TzhKVG9RNTdLekZnblVKQmNyUTJhUnRwWlU3K0VyQT0uMSIsInNjb3BlIjpbXSwiX3RhcmdldCI6IklkZW50aXR5UHJvdmlkZXIifQ.MstIL758rs-B1LiaJuGK6CmZHTRJYmAiA0jlD513XkUTXxKLeczcTXQ7KRJN_WvROAQ8Ymo0HwniYBWVchghwgs6uNB2i7-v9Ex-Mu7K0xXHVxBNpxVBCkFm5oFiwBrNN4WHCRYGvcrKAz3rrUUF9lqf8M8kKxpR9slg0G2nEHocwF1AyJhCEhfqDPHfDxu3hLOUNZH8p5P1UlgW9lC31mJAGzltGwaNnJQ7kOJFFpy_ezy4rqWitLTxfTSZ-o6GtIm1GQpAwpLVL-QeiN__o43g8PB55yVvMf1QpVPxHtJFNqIs_2z7iU3ipPTszw7yOEhncf9xI-LLNA4b9VEBOw]
2022-03-21 11:22:36,690|SIMPLICITE|ERROR||http://renault.simplicite.io:10028||ERROR|system|com.simplicite.webapp.servlets.api.ExternalObjectServlet|service||Event: Authentication error: Expired token
2022-03-21 11:22:36,689|SIMPLICITE|ERROR||http://renault.simplicite.io:10028||ECORED0001|system|com.simplicite.webapp.tools.ServletTool|createAPIGrantFromToken||Error Token is expired vs the token expiry date got from the token info 2022-03-21 11:52:35
2022-03-21 11:22:36,511|SIMPLICITE|INFO||http://renault.simplicite.io:10028||DAUTHCS001|system|com.simplicite.webapp.tools.ServletTool|validateJWTToken||Authentication debug: Token expiry date from the JWT token is [2022-03-21 11:52:36]
2022-03-21 11:22:36,470|SIMPLICITE|INFO||http://renault.simplicite.io:10028||DAUTHCS001|system|com.simplicite.webapp.tools.ServletTool|getAPIGrant||Authentication debug: Token from HTTP request = [eyJraWQiOiIxNzY3IiwidHlwIjoiSldUIiwiYWxnIjoiUlMyNTYifQ.eyJpc3MiOiJodHRwczovL2lkcDIucmVuYXVsdC5jb20vbmlkcC9vYXV0aC9uYW0iLCJqdGkiOiIyMzE1MzVjNy0xODFkLTQ4MjMtOWQ3ZS0zZGJlYTNiNDE3MzgiLCJhdWQiOiI1MzlmNmU2Yi0zMGEwLTQ1M2EtODc1Ny03MzQ1MzAwNzUxNmEiLCJleHAiOjE2NDc4NTk5NTYsImlhdCI6MTY0Nzg1ODE1NiwibmJmIjoxNjQ3ODU4MTI2LCJzdWIiOiIzOTYxMzc2MzM4MzkzODMyMmQ2NjY0NjM2NjMxMzE2NTM3MmQzODM1MzAzMjM5NjQzOTM0MmQ2MjMzMzczNzM3NjMzODY2IiwiX3B2dCI6InlKWW8vM2xyeWl2QzQ2a3VqM1p0Um85YnhxSEJBSDh3S1JsbVZOR1o3TTVqN2pNbHU2ckp3Nk4weFJWTUtpdGlhcFNaNjNVbmNhNVdqUENkbjNNM3VFWUpnUjJoMFEzV3ZmRmFzWE5TSUJ5SFgxd3lzUE1HKzJJNnN1eTZONDduNElPcXVCeDFIUVBZRUljenNlUGZGWWUxRnMxUWFxMVhDQ0lnVE11eGRuZ2h3S0VsdklPTi85RlJKTkg4bGc0eXFHTkpNL09BWC8zaEdDb203NTdpUnlFaVhCZnFYMDNiWEtIZENGVVlta0FKWjdQWU1LMnI5NHl0MVE5VzRXcUlPTlM4amo4WkEyei9aeSsrMHFjckx0cTV5ZmVleEZvYktvcGs3eEtvUGV6Zk5sK29obW94N2U3cmJVMTFZQVpRWStRenlxMmxRcFpNSmVXZ3V5VFdQWmx0ZTdHb2U5VzBtU0U3U241UGlTUWFpamYvdUZJcElJMkZhU2FVZGdRdTByOWNsUm5OcngxaytRN3pUTllWN2doOHhUVzRkSkNCdTE0NnZuMkczdTJGV2YvVFV2TE05ZWhBNndTSGE1VXZwd0NoWTcwNDArUmp5R1JoeXNPMDNSWnNrclhzR2dSaHVzTDArcWUzZ01hVmNLMVUzR2F4N01LK1lTWld2bmF1Q3EzVGJscXNWM0c5TzhKVG9RNTdLekZnblVKQmNyUTJhUnRwWlU3K0VyQT0uMSIsInNjb3BlIjpbXSwiX3RhcmdldCI6IklkZW50aXR5UHJvdmlkZXIifQ.MstIL758rs-B1LiaJuGK6CmZHTRJYmAiA0jlD513XkUTXxKLeczcTXQ7KRJN_WvROAQ8Ymo0HwniYBWVchghwgs6uNB2i7-v9Ex-Mu7K0xXHVxBNpxVBCkFm5oFiwBrNN4WHCRYGvcrKAz3rrUUF9lqf8M8kKxpR9slg0G2nEHocwF1AyJhCEhfqDPHfDxu3hLOUNZH8p5P1UlgW9lC31mJAGzltGwaNnJQ7kOJFFpy_ezy4rqWitLTxfTSZ-o6GtIm1GQpAwpLVL-QeiN__o43g8PB55yVvMf1QpVPxHtJFNqIs_2z7iU3ipPTszw7yOEhncf9xI-LLNA4b9VEBOw]

Conditions particulières du test : c’est un lancement de script jMeter donc il y a potentiellement plusieurs calls successifs avec le même token qui peuvent arriver avant que la première ouverture de session ne soit réalisée… je teste à nouveau avec un ramp-up plus souple pour m’assurer que le traitement du premier call n’est pas pollué par les suivants…
[EDIT] Non, mon script fait bien des appels en séquence sans paralléliser (1 seule connexion simultanée)

Il faudrait tester de manière unitaire pour avoir l’ensemble des traces de traitement d’un nouveau token.

Normalement c’est sensé donner des infos sur la réponse de l’URL token info etc.

Ce dont j’ai besoin avant tout pour tester dans des conditions iso, c’est du contenu de cette réponse token info => ce qui importe ici c’est notamment la manière dont il donne l’expiration du token.

Pour mémoire en 5.2+ il y a aussi un mode de validation du token purement JWT (= sans appel à une URL token info). C’est ce mode là qui est plutôt la cible dans votre cas mais ce serait bien de comprendre quand même ce qui pose pb ici avec le token info (car en 5.1 c’est ce mode là qui est utilisé et à priori ça marche, il y a donc peut être eu une régression entre 5.1 et 5.2 sur ce point, ce ne serait pas impossible vu l’ampleur du refactoring de code à ce niveau en 5.2)

OK en debuggant je pense avoir trouvé le pb
Je rebuilde et je te dis

1 Like