{"id":1238,"date":"2026-10-27T12:29:59","date_gmt":"2026-10-27T11:29:59","guid":{"rendered":"https:\/\/remivernier.com\/?p=1238"},"modified":"2026-10-27T12:29:59","modified_gmt":"2026-10-27T11:29:59","slug":"sso-kerberos-sap-gui-netweaver-snc-spn-keytab","status":"publish","type":"post","link":"https:\/\/remivernier.com\/index.php\/2026\/10\/27\/sso-kerberos-sap-gui-netweaver-snc-spn-keytab\/","title":{"rendered":"SSO Kerberos vers SAP GUI et SAP NetWeaver: SNC, SPN et keytab expliqu\u00e9s"},"content":{"rendered":"<p>Je ne vais pas refaire ici un guide d&rsquo;installation pas \u00e0 pas de SAP Single Sign-On. Les guides SAP et quelques billets de la communaut\u00e9 le font d\u00e9j\u00e0. Je pr\u00e9f\u00e8re expliquer ce qui se passe r\u00e9ellement entre le poste Windows, le contr\u00f4leur de domaine et le serveur ABAP quand un utilisateur ouvre SAP Logon et se retrouve connect\u00e9 sans saisir de mot de passe. Quand le SSO tombe en panne, savoir \u00e0 quelle \u00e9tape l&rsquo;\u00e9change \u00e9choue \u00e9vite de r\u00e9g\u00e9n\u00e9rer des PSE au hasard.<\/p>\n<p>Nous verrons comment SNC s&rsquo;appuie sur GSS-API, ce que contient r\u00e9ellement le \u00ab keytab \u00bb c\u00f4t\u00e9 SAP, quels param\u00e8tres de profil interviennent, comment un principal Kerberos devient un utilisateur SAP, puis comment diagnostiquer les erreurs les plus courantes.<\/p>\n<h2>Pr\u00e9sentation de la maquette<\/h2>\n<p>Pour tous les exemples, j&rsquo;utilise les noms suivants:<\/p>\n<ul>\n<li>Domaine Active Directory: test.local (royaume Kerberos TEST.LOCAL)<\/li>\n<li>Contr\u00f4leur de domaine \/ KDC: dc01.test.local<\/li>\n<li>Serveur SAP NetWeaver AS ABAP: srvsap01.test.local, SID ABC, instance 00<\/li>\n<li>Compte de service Active Directory: svc.sapabc<\/li>\n<li>SPN d\u00e9clar\u00e9 sur ce compte: SAP\/svc.sapabc<\/li>\n<li>Utilisateur de test: TESTrvernier, utilisateur SAP RVERNIER<\/li>\n<\/ul>\n<p>C\u00f4t\u00e9 serveur, la biblioth\u00e8que SNC est la CommonCryptoLib livr\u00e9e avec le noyau SAP (sapcrypto.dll sous Windows, libsapcrypto.so sous Linux). C\u00f4t\u00e9 client, SAP GUI pour Windows utilise une biblioth\u00e8que SNC compatible Kerberos, en pratique le Secure Login Client de SAP Single Sign-On.<\/p>\n<h2>SNC et GSS-API<\/h2>\n<p>SNC (Secure Network Communications) n&rsquo;est pas un protocole d&rsquo;authentification. C&rsquo;est une couche que SAP ins\u00e8re dans ses propres protocoles (DIAG pour SAP GUI, RFC, CPIC) et qui d\u00e9l\u00e8gue tout le travail de s\u00e9curit\u00e9 \u00e0 une biblioth\u00e8que externe via l&rsquo;interface GSS-API v2 (<a href=\"https:\/\/www.rfc-editor.org\/rfc\/rfc2743\">RFC 2743<\/a>). Le noyau SAP ne conna\u00eet rien \u00e0 Kerberos. Il appelle <code>gss_init_sec_context<\/code> c\u00f4t\u00e9 client, <code>gss_accept_sec_context<\/code> c\u00f4t\u00e9 serveur, \u00e9change des jetons opaques, puis demande \u00e0 la biblioth\u00e8que d&#8217;emballer les donn\u00e9es avec le niveau de protection voulu (authentification seule, int\u00e9grit\u00e9, confidentialit\u00e9).<\/p>\n<p>Avec le m\u00e9canisme Kerberos (<a href=\"https:\/\/www.rfc-editor.org\/rfc\/rfc4121\">RFC 4121<\/a>), le jeton envoy\u00e9 par le client contient un AP-REQ, c&rsquo;est-\u00e0-dire le ticket de service obtenu aupr\u00e8s du KDC et un authentificateur. Le serveur d\u00e9chiffre ce ticket avec la cl\u00e9 du compte de service. S&rsquo;il y parvient, il obtient le nom du client (rvernier@TEST.LOCAL), que SNC lui pr\u00e9sente sous la forme d&rsquo;un nom SNC. C&rsquo;est ce nom qui sera ensuite associ\u00e9 \u00e0 un utilisateur SAP.<\/p>\n<figure class=\"wp-block-image\">\n<svg viewBox=\"0 0 720 350\" width=\"100%\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" font-family=\"sans-serif\" font-size=\"13\">\n<defs>\n<marker id=\"fleche\" markerWidth=\"10\" markerHeight=\"8\" refX=\"9\" refY=\"4\" orient=\"auto\"><path d=\"M0,0 L10,4 L0,8 z\" fill=\"#333\"\/><\/marker>\n<\/defs>\n<rect x=\"20\" y=\"110\" width=\"220\" height=\"130\" fill=\"#e8f0fe\" stroke=\"#333\"\/>\n<text x=\"130\" y=\"135\" text-anchor=\"middle\" font-size=\"14\" font-weight=\"bold\">Poste client<\/text>\n<text x=\"130\" y=\"158\" text-anchor=\"middle\">SAP GUI \/ SAP Logon<\/text>\n<text x=\"130\" y=\"178\" text-anchor=\"middle\">Biblioth\u00e8que SNC (SNC_LIB)<\/text>\n<text x=\"130\" y=\"198\" text-anchor=\"middle\">Cache Kerberos (klist)<\/text>\n<text x=\"130\" y=\"218\" text-anchor=\"middle\">TESTrvernier<\/text>\n<rect x=\"480\" y=\"15\" width=\"220\" height=\"90\" fill=\"#fdf3e1\" stroke=\"#333\"\/>\n<text x=\"590\" y=\"40\" text-anchor=\"middle\" font-size=\"14\" font-weight=\"bold\">KDC dc01.test.local<\/text>\n<text x=\"590\" y=\"63\" text-anchor=\"middle\">Compte svc.sapabc<\/text>\n<text x=\"590\" y=\"83\" text-anchor=\"middle\">SPN SAP\/svc.sapabc<\/text>\n<rect x=\"480\" y=\"205\" width=\"220\" height=\"130\" fill=\"#e6f4ea\" stroke=\"#333\"\/>\n<text x=\"590\" y=\"230\" text-anchor=\"middle\" font-size=\"14\" font-weight=\"bold\">AS ABAP srvsap01 (ABC)<\/text>\n<text x=\"590\" y=\"253\" text-anchor=\"middle\">CommonCryptoLib<\/text>\n<text x=\"590\" y=\"273\" text-anchor=\"middle\">Keytab (SAPSNCSKERB.pse)<\/text>\n<text x=\"590\" y=\"293\" text-anchor=\"middle\">Nom SNC -&gt; USRACL<\/text>\n<text x=\"590\" y=\"313\" text-anchor=\"middle\">Utilisateur RVERNIER<\/text>\n<line x1=\"240\" y1=\"125\" x2=\"477\" y2=\"45\" stroke=\"#333\" stroke-width=\"1.5\" marker-end=\"url(#fleche)\"\/>\n<text x=\"285\" y=\"72\">1. TGS-REQ pour le nom cible<\/text>\n<line x1=\"478\" y1=\"85\" x2=\"243\" y2=\"160\" stroke=\"#333\" stroke-width=\"1.5\" marker-end=\"url(#fleche)\"\/>\n<text x=\"300\" y=\"150\">2. Ticket chiffr\u00e9 avec la cl\u00e9 de svc.sapabc<\/text>\n<line x1=\"240\" y1=\"215\" x2=\"477\" y2=\"250\" stroke=\"#333\" stroke-width=\"1.5\" marker-end=\"url(#fleche)\"\/>\n<text x=\"250\" y=\"258\">3. DIAG + jeton GSS-API (AP-REQ)<\/text>\n<line x1=\"478\" y1=\"300\" x2=\"243\" y2=\"235\" stroke=\"#333\" stroke-width=\"1.5\" stroke-dasharray=\"5,4\" marker-end=\"url(#fleche)\"\/>\n<text x=\"250\" y=\"305\">4. AP-REP, session SNC prot\u00e9g\u00e9e<\/text>\n<\/svg><figcaption>Flux d&rsquo;une connexion SAP GUI avec SNC Kerberos<\/figcaption><\/figure>\n<p>Le serveur SAP ne contacte jamais le contr\u00f4leur de domaine pendant l&rsquo;ouverture de session. Tout repose sur le fait qu&rsquo;il poss\u00e8de localement les m\u00eames cl\u00e9s que celles que le KDC a utilis\u00e9es pour chiffrer le ticket. Si ces cl\u00e9s divergent (mot de passe chang\u00e9, mauvais type de chiffrement, mauvais sel), le ticket est ind\u00e9chiffrable et le SSO \u00e9choue. La majorit\u00e9 des pannes vient de l\u00e0.<\/p>\n<h2>Compte de service et SPN pour SAP<\/h2>\n<p>Le serveur SAP a besoin d&rsquo;une identit\u00e9 Kerberos. On cr\u00e9e donc un compte utilisateur dans Active Directory, d\u00e9di\u00e9 au syst\u00e8me ABC (un compte par syst\u00e8me, pas un compte partag\u00e9 pour tout le paysage SAP). Ce point est tr\u00e8s important pour la suite: les cl\u00e9s de ce compte vont \u00eatre recopi\u00e9es dans un fichier sur le serveur, donc chaque rotation de mot de passe impose une mise \u00e0 jour c\u00f4t\u00e9 SAP.<\/p>\n<p>On d\u00e9clare ensuite le SPN et on v\u00e9rifie qu&rsquo;il est unique dans la for\u00eat:<\/p>\n<pre class=\"wp-block-code\"><code>setspn -S SAP\/svc.sapabc TESTsvc.sapabc\nsetspn -L TESTsvc.sapabc\nsetspn -Q SAP\/svc.sapabc\nsetspn -X<\/code><\/pre>\n<p>-> <code>setspn -S<\/code> refuse d&rsquo;ajouter un SPN d\u00e9j\u00e0 pr\u00e9sent ailleurs, contrairement \u00e0 l&rsquo;ancien <code>-A<\/code>.<br \/>\n-> <code>setspn -X<\/code> recherche les doublons. Un SPN en double donne au KDC un comportement impr\u00e9visible et le r\u00e9sultat est un ticket chiffr\u00e9 avec la cl\u00e9 du mauvais compte.<\/p>\n<p>La convention SAP\/&lt;compte&gt; est la plus r\u00e9pandue dans les exemples de la communaut\u00e9, mais elle n&rsquo;a rien d&rsquo;obligatoire. Ce qui compte, c&rsquo;est la coh\u00e9rence entre trois endroits: le principal utilis\u00e9 pour g\u00e9n\u00e9rer le keytab, le param\u00e8tre <code>snc\/identity\/as<\/code> du serveur et le nom SNC saisi dans l&rsquo;entr\u00e9e SAP Logon.<\/p>\n<p>Pensez aussi aux types de chiffrement. Si vous voulez de l&rsquo;AES (et vous le voulez, Microsoft pousse depuis longtemps \u00e0 abandonner RC4), cochez les deux cases AES 128 et 256 bits dans les options du compte, ou positionnez directement l&rsquo;attribut:<\/p>\n<pre class=\"wp-block-code\"><code>Set-ADUser svc.sapabc -Replace @{\"msDS-SupportedEncryptionTypes\"=24}<\/code><\/pre>\n<p>La valeur 24 correspond \u00e0 8 (AES128) + 16 (AES256).<\/p>\n<h3>Le keytab n&rsquo;est pas un fichier keytab<\/h3>\n<p>Ceux qui viennent du monde MIT Kerberos cherchent souvent un fichier <code>.keytab<\/code> g\u00e9n\u00e9r\u00e9 avec <code>ktpass<\/code>. Ce n&rsquo;est pas comme \u00e7a que fonctionne la CommonCryptoLib. Dans la m\u00e9thode historique, les cl\u00e9s sont stock\u00e9es dans un PSE d\u00e9di\u00e9, <code>SAPSNCSKERB.pse<\/code>, dans le r\u00e9pertoire <code>SECUDIR<\/code> de l&rsquo;instance, et c&rsquo;est <code>sapgenpse<\/code> qui d\u00e9rive les cl\u00e9s \u00e0 partir du mot de passe du compte de service:<\/p>\n<pre class=\"wp-block-code\"><code>set SECUDIR=D:usrsapABCD00sec\nsapgenpse keytab -p SAPSNCSKERB.pse -k \"AES256 AES128\" -a svc.sapabc@TEST.LOCAL\nsapgenpse seclogin -p SAPSNCSKERB.pse -O SAPServiceABC\nsapgenpse seclogin -l\nsapgenpse get_my_name -p SAPSNCSKERB.pse<\/code><\/pre>\n<p>L&rsquo;outil demande le PIN du PSE puis le mot de passe de svc.sapabc. La commande <code>seclogin<\/code> cr\u00e9e l&rsquo;entr\u00e9e dans le fichier de credentials (<code>cred_v2<\/code>) pour que le processus SAP puisse ouvrir le PSE sans PIN. Sous Windows, il faut qu&rsquo;elle soit valable pour le compte qui fait tourner les work process (SAPServiceABC), sous Linux pour abcadm. Enfin, <code>get_my_name<\/code> affiche les entr\u00e9es du keytab, avec leur type de cl\u00e9. Cette s\u00e9quence est bien illustr\u00e9e dans <a href=\"https:\/\/blogs.sap.com\/2016\/01\/28\/is-your-sap-gui-connection-encrypted-can-someone-eavesdrop-your-data\/\">ce billet de la communaut\u00e9 SAP<\/a>, et l&rsquo;option <code>-k<\/code> pour restreindre les types de cl\u00e9s est donn\u00e9e par Carsten dans <a href=\"https:\/\/community.sap.com\/t5\/technology-q-a\/enabling-aes256-for-snc-with-sapgui-no-sso\/qaq-p\/11739605\">cette discussion sur l&rsquo;AES256<\/a>.<\/p>\n<p>Un d\u00e9tail qui explique pas mal de cas \u00ab \u00e7a marche en RC4 mais pas en AES \u00bb: les cl\u00e9s AES sont d\u00e9riv\u00e9es du mot de passe et d&rsquo;un sel. Dans Active Directory, pour un compte utilisateur, ce sel est construit \u00e0 partir du royaume en majuscules et du nom du compte, avec respect de la casse. RC4 n&rsquo;utilise pas de sel. Si le nom pass\u00e9 \u00e0 <code>-a<\/code> ne correspond pas exactement \u00e0 ce qu&rsquo;AD utilise (casse diff\u00e9rente, nom de SPN au lieu du nom de compte selon la fa\u00e7on dont l&rsquo;outil construit le sel), les cl\u00e9s AES calcul\u00e9es par <code>sapgenpse<\/code> ne seront pas celles du KDC, alors que la cl\u00e9 RC4 restera juste. D&rsquo;o\u00f9 la recommandation, qu&rsquo;on retrouve dans les discussions SAP, de toujours \u00e9crire le royaume en majuscules et de respecter la casse exacte du compte. C&rsquo;est aussi pour cette raison que j&rsquo;utilise ici le nom du compte (svc.sapabc@TEST.LOCAL) plut\u00f4t que le SPN pour le keytab et l&rsquo;identit\u00e9 SNC.<\/p>\n<p>Avec SAP Single Sign-On 3.0, SAP a d\u00e9plac\u00e9 ce stockage: d&rsquo;apr\u00e8s la <a href=\"https:\/\/userapps.support.sap.com\/sap\/support\/knowledge\/en\/3360330\">KBA 3360330<\/a>, le keytab est d\u00e9sormais conserv\u00e9 en base via la transaction \u00ab SPNEGO \u00bb, et <code>SAPSNCSKERB.pse<\/code> est pr\u00e9sent\u00e9 comme une configuration h\u00e9rit\u00e9e. Le principe ne change pas: ce sont toujours des cl\u00e9s d\u00e9riv\u00e9es du mot de passe du compte de service. Seul l&#8217;emplacement change. \u00c9vitez simplement de m\u00e9langer les deux m\u00e9thodes sur un m\u00eame syst\u00e8me, car c&rsquo;est une source classique de confusion.<\/p>\n<p>Derni\u00e8re remarque sur ce PSE: les cl\u00e9s n&rsquo;expirent pas. Comme le rappelle <a href=\"https:\/\/community.sap.com\/t5\/technology-q-a\/sap-netweaver-sso-2-0-keytab-lifetime\/qaq-p\/10802203\">cette r\u00e9ponse<\/a>, il n&rsquo;y a rien \u00e0 planifier en t\u00e2che p\u00e9riodique. Il faut seulement r\u00e9g\u00e9n\u00e9rer le keytab quand le mot de passe du compte de service change.<\/p>\n<h2>Param\u00e8tres de profil snc\/*<\/h2>\n<p>Voici le jeu de param\u00e8tres d&rsquo;instance que j&rsquo;utilise sur la maquette (via \u00ab RZ10 \u00bb ou directement dans le profil):<\/p>\n<pre class=\"wp-block-code\"><code>snc\/enable                 = 1\nsnc\/gssapi_lib             = $(DIR_EXECUTABLE)$(DIR_SEP)$(FT_DLL_PREFIX)sapcrypto$(FT_DLL)\nsnc\/identity\/as            = p:CN=svc.sapabc@TEST.LOCAL\nsnc\/data_protection\/min    = 2\nsnc\/data_protection\/max    = 3\nsnc\/data_protection\/use    = 3\nsnc\/accept_insecure_gui    = 1\nsnc\/accept_insecure_rfc    = 1\nsnc\/accept_insecure_cpic   = 1\nsnc\/permit_insecure_start  = 1\nsnc\/force_login_screen     = 0\nsnc\/extid_login_diag       = 0<\/code><\/pre>\n<p>Quelques explications:<\/p>\n<ul>\n<li><code>snc\/gssapi_lib<\/code> pointe vers la biblioth\u00e8que GSS-API charg\u00e9e par le noyau. Avec la CommonCryptoLib, c&rsquo;est la m\u00eame biblioth\u00e8que qui g\u00e8re X.509 et Kerberos.<\/li>\n<li><code>snc\/identity\/as<\/code> est le nom SNC du serveur. Le pr\u00e9fixe <code>p:<\/code> signifie \u00ab nom propre au produit de s\u00e9curit\u00e9 \u00bb, et la CommonCryptoLib attend la forme <code>CN=<\/code>. Le client devra saisir ce m\u00eame nom dans SAP Logon.<\/li>\n<li><code>snc\/data_protection\/*<\/code> fixe le niveau de protection: 1 pour l&rsquo;authentification seule, 2 pour l&rsquo;int\u00e9grit\u00e9, 3 pour la confidentialit\u00e9. Je ne vois aucune raison de descendre en dessous de 3 pour <code>use<\/code>.<\/li>\n<li>Les param\u00e8tres <code>accept_insecure_*<\/code> et <code>permit_insecure_start<\/code> laissent passer les connexions non SNC pendant la mise en place. On les resserre ensuite (voir plus bas).<\/li>\n<li><code>snc\/extid_login_diag<\/code> active le mapping par identifiants externes, dont nous parlerons dans la section suivante.<\/li>\n<\/ul>\n<p>Si vous utilisez la m\u00e9thode \u00ab SPNEGO \u00bb de SSO 3.0, vous verrez aussi <code>spnego\/enable = 1<\/code> et <code>spnego\/krbspnego_lib<\/code>, qui pointe lui aussi vers sapcrypto.<\/p>\n<p>Attention, la CommonCryptoLib attend aussi un PSE SNC classique (\u00ab SNC SAPCryptolib \u00bb dans \u00ab STRUST \u00bb, fichier <code>SAPSNCS.pse<\/code>) en plus du keytab. Sans lui, <code>sapgenpse<\/code> affiche un avertissement explicite au moment de cr\u00e9er le keytab, comme on le voit dans <a href=\"https:\/\/enterprise447.rssing.com\/chan-8215681\/all_p303.html\">cet \u00e9change archiv\u00e9<\/a>. La transaction \u00ab SNCWIZARD \u00bb cr\u00e9e ce PSE et positionne les param\u00e8tres de base, si elle est disponible sur votre version.<\/p>\n<p>Enfin, si le PSE est incoh\u00e9rent avec <code>snc\/enable = 1<\/code>, l&rsquo;instance peut refuser de d\u00e9marrer. Dans ce cas on repasse temporairement <code>snc\/enable<\/code> \u00e0 0, on corrige, puis on r\u00e9active. Je fais donc toujours ce premier passage sur un syst\u00e8me hors production.<\/p>\n<h3>C\u00f4t\u00e9 client<\/h3>\n<p>SAP GUI charge la biblioth\u00e8que indiqu\u00e9e par la variable d&rsquo;environnement <code>SNC_LIB<\/code> (le Secure Login Client la positionne \u00e0 l&rsquo;installation). Dans l&rsquo;entr\u00e9e SAP Logon du syst\u00e8me, onglet \u00ab R\u00e9seau \u00bb, on active la communication s\u00e9curis\u00e9e, on choisit le niveau de protection maximal et on saisit le nom SNC du serveur:<\/p>\n<pre class=\"wp-block-code\"><code>p:CN=svc.sapabc@TEST.LOCAL<\/code><\/pre>\n<p>Une faute de frappe ici et le client demande au KDC un ticket pour un principal qui n&rsquo;existe pas. Le message d&rsquo;erreur ne vous le dira pas toujours aussi clairement.<\/p>\n<h2>Du principal Kerberos \u00e0 l&rsquo;utilisateur SAP<\/h2>\n<p>Une fois le jeton accept\u00e9, le serveur conna\u00eet le nom SNC du client, par exemple <code>p:CN=rvernier@TEST.LOCAL<\/code>. Il lui faut maintenant trouver l&rsquo;utilisateur SAP correspondant. Le plan initial de cet article parlait de \u00ab SNC0 \u00bb et de la table USREXTID. Il faut rectifier, car ce sont deux m\u00e9canismes diff\u00e9rents et SNC0 ne g\u00e8re pas les utilisateurs.<\/p>\n<ol>\n<li>Le mapping standard se fait dans \u00ab SU01 \u00bb, onglet \u00ab SNC \u00bb. Le nom SNC saisi (<code>p:CN=rvernier@TEST.LOCAL<\/code>) est stock\u00e9 dans la table USRACL. L&rsquo;association est un pour un, et c&rsquo;est cette table que le noyau consulte lors d&rsquo;une connexion SAP GUI. Pour un grand nombre d&rsquo;utilisateurs, le rapport RSUSR300 permet de g\u00e9n\u00e9rer les noms SNC \u00e0 partir d&rsquo;un mod\u00e8le.<\/li>\n<li>Le mapping par identifiants externes repose sur la table USREXTID, avec un type d&rsquo;identifiant Kerberos, que l&rsquo;on maintient par la transaction \u00ab EXTID_KERBEROS \u00bb. Il n&rsquo;est pris en compte pour SAP GUI que si <code>snc\/extid_login_diag = 1<\/code> (et <code>snc\/extid_login_rfc<\/code> pour RFC). L&rsquo;int\u00e9r\u00eat est de pouvoir associer des principaux qui ne suivent pas un mod\u00e8le simple, ou de g\u00e9rer le mapping en masse depuis un outil de provisioning.<\/li>\n<li>\u00ab SNC0 \u00bb, enfin, maintient la liste de contr\u00f4le d&rsquo;acc\u00e8s des syst\u00e8mes (table SNCSYSACL). Elle sert aux connexions RFC et CPIC entre syst\u00e8mes, pas aux utilisateurs SAP GUI.<\/li>\n<\/ol>\n<p>Deux pi\u00e8ges reviennent r\u00e9guli\u00e8rement. Le premier est la casse: le royaume doit \u00eatre en majuscules (TEST.LOCAL), exactement comme dans le ticket. Le second concerne les utilisateurs dont l&rsquo;UPN ne correspond pas au sAMAccountName: c&rsquo;est le nom du principal pr\u00e9sent dans le ticket qui compte, pas l&rsquo;adresse de messagerie affich\u00e9e dans l&rsquo;annuaire.<\/p>\n<h2>Diagnostic<\/h2>\n<p>Quand le SSO ne fonctionne pas, je proc\u00e8de toujours dans le m\u00eame ordre: d&rsquo;abord le ticket c\u00f4t\u00e9 client, ensuite l&rsquo;acceptation c\u00f4t\u00e9 serveur, enfin le mapping. <\/p>\n<h3>Le client a-t-il un ticket?<\/h3>\n<pre class=\"wp-block-code\"><code>klist\nklist purge\nklist get svc.sapabc@TEST.LOCAL\nklist get SAP\/svc.sapabc<\/code><\/pre>\n<p>-> Si <code>klist get<\/code> \u00e9choue avec KDC_ERR_S_PRINCIPAL_UNKNOWN, le nom cible est inconnu du KDC: faute dans le nom SNC, SPN absent ou mauvais royaume.<br \/>\n-> Si le ticket est d\u00e9livr\u00e9, regardez le type de chiffrement de la cl\u00e9 de session et du ticket. Un ticket en RC4 alors que vous attendiez de l&rsquo;AES pointe vers l&rsquo;attribut msDS-SupportedEncryptionTypes du compte de service.<br \/>\n-> Apr\u00e8s une connexion SAP GUI, le ticket doit appara\u00eetre dans le cache. S&rsquo;il n&rsquo;y est pas, la biblioth\u00e8que SNC du client n&rsquo;a m\u00eame pas tent\u00e9 Kerberos: v\u00e9rifiez <code>SNC_LIB<\/code> et l&rsquo;\u00e9tat du Secure Login Client.<\/p>\n<h3>Le serveur accepte-t-il le ticket?<\/h3>\n<p>C\u00f4t\u00e9 ABAP, les informations se trouvent dans les traces des work process (<code>dev_w*<\/code>). Au d\u00e9marrage, <code>dev_w0<\/code> doit montrer l&rsquo;initialisation SNC (lignes <code>SncInit<\/code>) et la version de la CommonCryptoLib charg\u00e9e. Pour une connexion qui \u00e9choue, augmentez le niveau de trace du work process dans \u00ab SM50 \u00bb (ou de mani\u00e8re cibl\u00e9e avec \u00ab ST11 \u00bb pour lire le fichier), reproduisez l&rsquo;erreur, puis cherchez les lignes SNC et le code GSS-API retourn\u00e9. Le journal syst\u00e8me \u00ab SM21 \u00bb donne aussi le motif du refus.<\/p>\n<p>Sur le syst\u00e8me de fichiers, deux commandes permettent de v\u00e9rifier que le processus SAP peut r\u00e9ellement utiliser le keytab:<\/p>\n<pre class=\"wp-block-code\"><code>sapgenpse seclogin -l -O SAPServiceABC\nsapgenpse get_my_name -p SAPSNCSKERB.pse<\/code><\/pre>\n<p>La premi\u00e8re montre si le compte qui ex\u00e9cute les work process dispose bien des credentials. Si SAPServiceABC ne peut pas ouvrir le keytab, les sympt\u00f4mes sont les m\u00eames que si les cl\u00e9s \u00e9taient fausses. La seconde liste les entr\u00e9es du keytab et leurs types de cl\u00e9s.<\/p>\n<h3>Erreurs typiques<\/h3>\n<table>\n<thead>\n<tr>\n<th>Sympt\u00f4me<\/th>\n<th>Cause probable<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>KDC_ERR_S_PRINCIPAL_UNKNOWN c\u00f4t\u00e9 client<\/td>\n<td>Nom SNC du serveur erron\u00e9 dans SAP Logon, SPN absent, royaume en minuscules<\/td>\n<\/tr>\n<tr>\n<td>\u00ab The verification of the Kerberos ticket failed \u00bb c\u00f4t\u00e9 serveur<\/td>\n<td>Cl\u00e9s du keytab diff\u00e9rentes de celles du KDC: mot de passe du compte chang\u00e9, sel AES incorrect, SPN en double<\/td>\n<\/tr>\n<tr>\n<td>\u00ab GSS-API(maj): Miscellaneous failure \u00bb<\/td>\n<td>Message g\u00e9n\u00e9rique de la biblioth\u00e8que, il faut aller lire les traces des deux c\u00f4t\u00e9s<\/td>\n<\/tr>\n<tr>\n<td>\u00ab No user exists with SNC name \u2026 \u00bb<\/td>\n<td>Ticket accept\u00e9, mais aucun utilisateur ne porte ce nom SNC dans USRACL (ou dans USREXTID si les identifiants externes sont activ\u00e9s)<\/td>\n<\/tr>\n<tr>\n<td>Nom SNC du client affich\u00e9 sous la forme \u00ab SNC ENCRYPTION ONLY (KERBEROS SERVER AUTH) \u00bb<\/td>\n<td>La session est chiffr\u00e9e, mais le client ne transmet pas d&rsquo;identit\u00e9 exploitable pour le SSO (configuration de chiffrement seul)<\/td>\n<\/tr>\n<tr>\n<td>Instance qui ne d\u00e9marre plus apr\u00e8s activation<\/td>\n<td>PSE SNC ou keytab illisible avec <code>snc\/enable = 1<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>La deuxi\u00e8me ligne est la plus fr\u00e9quente. Les discussions comme <a href=\"https:\/\/community.sap.com\/t5\/technology-q-a\/snc-error-the-verification-of-the-kerberos-ticket-failed\/qaq-p\/11418931\">celle-ci<\/a> finissent presque toujours de la m\u00eame fa\u00e7on: on supprime le PSE, on le recr\u00e9e avec le bon principal et le royaume en majuscules, on refait le <code>seclogin<\/code> pour le bon compte, puis on contr\u00f4le avec <code>get_my_name<\/code> et <code>setspn -L<\/code>. Le cas \u00ab SNC ENCRYPTION ONLY \u00bb appara\u00eet par exemple dans <a href=\"https:\/\/community.sap.com\/t5\/application-development-discussions\/snc-kerberos-configuration-for-sap-gui-is-not-working\/td-p\/689747\">ce fil<\/a>. Je n&rsquo;ai pas trouv\u00e9 de documentation publique qui d\u00e9taille pr\u00e9cis\u00e9ment ce libell\u00e9: mon interpr\u00e9tation reste une piste de diagnostic, pas une r\u00e8gle.<\/p>\n<h2>Quelle biblioth\u00e8que SNC, et sous quelle licence?<\/h2>\n<p>Le plan pr\u00e9voyait de v\u00e9rifier ce point, et je pr\u00e9f\u00e8re \u00eatre transparent: au moment o\u00f9 j&rsquo;\u00e9cris ces lignes (octobre 2026), je n&rsquo;ai pas pu revalider l&rsquo;\u00e9tat actuel de toutes les notes SAP concern\u00e9es. Voici ce qui est \u00e9tabli par les sources que j&rsquo;ai consult\u00e9es:<\/p>\n<ul>\n<li>C\u00f4t\u00e9 serveur, la CommonCryptoLib est livr\u00e9e avec le noyau. Le billet de 2016 cit\u00e9 plus haut indique qu&rsquo;il fallait au moins la version 8.4.30 pour le chiffrement client bas\u00e9 sur Kerberos.<\/li>\n<li>Le message affich\u00e9 par <code>sapgenpse keytab<\/code> est clair: le SSO n\u00e9cessite une licence SAP Single Sign-On, alors que le chiffrement SNC client seul, sans SSO, est gratuit selon la note SAP 1643878.<\/li>\n<li>SAP Single Sign-On 3.0 est la version pr\u00e9sent\u00e9e comme support\u00e9e dans la KBA 3360330.<\/li>\n<\/ul>\n<p>Les anciennes biblioth\u00e8ques Kerberos pour Windows (gsskrb5 et son \u00e9quivalent 64 bits fourni par SAP) ne fonctionnaient qu&rsquo;entre clients et serveurs Windows et sont aujourd&rsquo;hui des solutions h\u00e9rit\u00e9es. Avant de lancer un projet, v\u00e9rifiez sur le portail SAP Support les notes de licence et la matrice de support de la version de Secure Login Client que vous comptez d\u00e9ployer.<\/p>\n<h2>Resserrer apr\u00e8s la mise en service<\/h2>\n<p>Tant que <code>snc\/accept_insecure_gui = 1<\/code>, n&rsquo;importe qui peut encore se connecter sans SNC avec un mot de passe, et en clair sur le r\u00e9seau. Une fois le SSO valid\u00e9 pour une population, passez ce param\u00e8tre \u00e0 <code>U<\/code>. La d\u00e9cision se prend alors utilisateur par utilisateur, gr\u00e2ce \u00e0 la case \u00ab Communication non s\u00e9curis\u00e9e autoris\u00e9e \u00bb de l&rsquo;onglet \u00ab SNC \u00bb de SU01. Vous d\u00e9cochez cette case au fur et \u00e0 mesure du d\u00e9ploiement, et les comptes techniques qui en ont r\u00e9ellement besoin gardent l&rsquo;exception, document\u00e9e. Les connexions SAP GUI restantes sans SNC deviennent ainsi une liste nominative que l&rsquo;on peut r\u00e9duire, plut\u00f4t qu&rsquo;une porte ouverte \u00e0 tout le monde.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Fonctionnement de SNC avec Kerberos vers un serveur ABAP: compte de service, SPN, keytab dans le PSE, param\u00e8tres snc\/*, mapping des utilisateurs et diagnostic.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4,53],"tags":[57,5,17,54,56,55,7,9],"class_list":["post-1238","post","type-post","status-publish","format-standard","hentry","category-kerberos","category-sap","tag-commoncryptolib","tag-kerberos","tag-keytab","tag-sap","tag-sap-gui","tag-snc","tag-spn","tag-sso"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>SSO Kerberos vers SAP GUI et SAP NetWeaver: SNC, SPN et keytab expliqu\u00e9s - R\u00e9mi VERNIER<\/title>\n<meta name=\"description\" content=\"Fonctionnement de SNC avec Kerberos vers un serveur ABAP: compte de service, SPN, keytab dans le PSE, param\u00e8tres snc\/*, mapping des utilisateurs et diagnostic.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/remivernier.com\/index.php\/2026\/10\/27\/sso-kerberos-sap-gui-netweaver-snc-spn-keytab\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"SSO Kerberos vers SAP GUI et SAP NetWeaver: SNC, SPN et keytab expliqu\u00e9s - R\u00e9mi VERNIER\" \/>\n<meta property=\"og:description\" content=\"Fonctionnement de SNC avec Kerberos vers un serveur ABAP: compte de service, SPN, keytab dans le PSE, param\u00e8tres snc\/*, mapping des utilisateurs et diagnostic.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/remivernier.com\/index.php\/2026\/10\/27\/sso-kerberos-sap-gui-netweaver-snc-spn-keytab\/\" \/>\n<meta property=\"og:site_name\" content=\"R\u00e9mi VERNIER\" \/>\n<meta property=\"article:published_time\" content=\"2026-10-27T11:29:59+00:00\" \/>\n<meta name=\"author\" content=\"R\u00e9mi\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u00c9crit par\" \/>\n\t<meta name=\"twitter:data1\" content=\"R\u00e9mi\" \/>\n\t<meta name=\"twitter:label2\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data2\" content=\"15 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/remivernier.com\\\/index.php\\\/2026\\\/10\\\/27\\\/sso-kerberos-sap-gui-netweaver-snc-spn-keytab\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/remivernier.com\\\/index.php\\\/2026\\\/10\\\/27\\\/sso-kerberos-sap-gui-netweaver-snc-spn-keytab\\\/\"},\"author\":{\"name\":\"R\u00e9mi\",\"@id\":\"https:\\\/\\\/remivernier.com\\\/#\\\/schema\\\/person\\\/a4c76c63a5a3d94454484845e42fc906\"},\"headline\":\"SSO Kerberos vers SAP GUI et SAP NetWeaver: SNC, SPN et keytab expliqu\u00e9s\",\"datePublished\":\"2026-10-27T11:29:59+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/remivernier.com\\\/index.php\\\/2026\\\/10\\\/27\\\/sso-kerberos-sap-gui-netweaver-snc-spn-keytab\\\/\"},\"wordCount\":2850,\"commentCount\":0,\"keywords\":[\"commoncryptolib\",\"kerberos\",\"keytab\",\"sap\",\"sap gui\",\"snc\",\"spn\",\"SSO\"],\"articleSection\":[\"Kerberos\",\"SAP\"],\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/remivernier.com\\\/index.php\\\/2026\\\/10\\\/27\\\/sso-kerberos-sap-gui-netweaver-snc-spn-keytab\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/remivernier.com\\\/index.php\\\/2026\\\/10\\\/27\\\/sso-kerberos-sap-gui-netweaver-snc-spn-keytab\\\/\",\"url\":\"https:\\\/\\\/remivernier.com\\\/index.php\\\/2026\\\/10\\\/27\\\/sso-kerberos-sap-gui-netweaver-snc-spn-keytab\\\/\",\"name\":\"SSO Kerberos vers SAP GUI et SAP NetWeaver: SNC, SPN et keytab expliqu\u00e9s - R\u00e9mi VERNIER\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/remivernier.com\\\/#website\"},\"datePublished\":\"2026-10-27T11:29:59+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/remivernier.com\\\/#\\\/schema\\\/person\\\/a4c76c63a5a3d94454484845e42fc906\"},\"description\":\"Fonctionnement de SNC avec Kerberos vers un serveur ABAP: compte de service, SPN, keytab dans le PSE, param\u00e8tres snc\\\/*, mapping des utilisateurs et diagnostic.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/remivernier.com\\\/index.php\\\/2026\\\/10\\\/27\\\/sso-kerberos-sap-gui-netweaver-snc-spn-keytab\\\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/remivernier.com\\\/index.php\\\/2026\\\/10\\\/27\\\/sso-kerberos-sap-gui-netweaver-snc-spn-keytab\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/remivernier.com\\\/index.php\\\/2026\\\/10\\\/27\\\/sso-kerberos-sap-gui-netweaver-snc-spn-keytab\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\\\/\\\/remivernier.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"SSO Kerberos vers SAP GUI et SAP NetWeaver: SNC, SPN et keytab expliqu\u00e9s\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/remivernier.com\\\/#website\",\"url\":\"https:\\\/\\\/remivernier.com\\\/\",\"name\":\"R\u00e9mi VERNIER\",\"description\":\"Identit\u00e9, s\u00e9curit\u00e9, SAP et IA : Active Directory, Azure &amp; co...\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/remivernier.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/remivernier.com\\\/#\\\/schema\\\/person\\\/a4c76c63a5a3d94454484845e42fc906\",\"name\":\"R\u00e9mi\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f750448bc07f5d1d9c1189344283777ec0d33275c184599b199fb6b305bc6fba?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f750448bc07f5d1d9c1189344283777ec0d33275c184599b199fb6b305bc6fba?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f750448bc07f5d1d9c1189344283777ec0d33275c184599b199fb6b305bc6fba?s=96&d=mm&r=g\",\"caption\":\"R\u00e9mi\"},\"sameAs\":[\"http:\\\/\\\/www.linkedin.com\\\/in\\\/remi-vernier\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"SSO Kerberos vers SAP GUI et SAP NetWeaver: SNC, SPN et keytab expliqu\u00e9s - R\u00e9mi VERNIER","description":"Fonctionnement de SNC avec Kerberos vers un serveur ABAP: compte de service, SPN, keytab dans le PSE, param\u00e8tres snc\/*, mapping des utilisateurs et diagnostic.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/remivernier.com\/index.php\/2026\/10\/27\/sso-kerberos-sap-gui-netweaver-snc-spn-keytab\/","og_locale":"fr_FR","og_type":"article","og_title":"SSO Kerberos vers SAP GUI et SAP NetWeaver: SNC, SPN et keytab expliqu\u00e9s - R\u00e9mi VERNIER","og_description":"Fonctionnement de SNC avec Kerberos vers un serveur ABAP: compte de service, SPN, keytab dans le PSE, param\u00e8tres snc\/*, mapping des utilisateurs et diagnostic.","og_url":"https:\/\/remivernier.com\/index.php\/2026\/10\/27\/sso-kerberos-sap-gui-netweaver-snc-spn-keytab\/","og_site_name":"R\u00e9mi VERNIER","article_published_time":"2026-10-27T11:29:59+00:00","author":"R\u00e9mi","twitter_card":"summary_large_image","twitter_misc":{"\u00c9crit par":"R\u00e9mi","Dur\u00e9e de lecture estim\u00e9e":"15 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/remivernier.com\/index.php\/2026\/10\/27\/sso-kerberos-sap-gui-netweaver-snc-spn-keytab\/#article","isPartOf":{"@id":"https:\/\/remivernier.com\/index.php\/2026\/10\/27\/sso-kerberos-sap-gui-netweaver-snc-spn-keytab\/"},"author":{"name":"R\u00e9mi","@id":"https:\/\/remivernier.com\/#\/schema\/person\/a4c76c63a5a3d94454484845e42fc906"},"headline":"SSO Kerberos vers SAP GUI et SAP NetWeaver: SNC, SPN et keytab expliqu\u00e9s","datePublished":"2026-10-27T11:29:59+00:00","mainEntityOfPage":{"@id":"https:\/\/remivernier.com\/index.php\/2026\/10\/27\/sso-kerberos-sap-gui-netweaver-snc-spn-keytab\/"},"wordCount":2850,"commentCount":0,"keywords":["commoncryptolib","kerberos","keytab","sap","sap gui","snc","spn","SSO"],"articleSection":["Kerberos","SAP"],"inLanguage":"fr-FR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/remivernier.com\/index.php\/2026\/10\/27\/sso-kerberos-sap-gui-netweaver-snc-spn-keytab\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/remivernier.com\/index.php\/2026\/10\/27\/sso-kerberos-sap-gui-netweaver-snc-spn-keytab\/","url":"https:\/\/remivernier.com\/index.php\/2026\/10\/27\/sso-kerberos-sap-gui-netweaver-snc-spn-keytab\/","name":"SSO Kerberos vers SAP GUI et SAP NetWeaver: SNC, SPN et keytab expliqu\u00e9s - R\u00e9mi VERNIER","isPartOf":{"@id":"https:\/\/remivernier.com\/#website"},"datePublished":"2026-10-27T11:29:59+00:00","author":{"@id":"https:\/\/remivernier.com\/#\/schema\/person\/a4c76c63a5a3d94454484845e42fc906"},"description":"Fonctionnement de SNC avec Kerberos vers un serveur ABAP: compte de service, SPN, keytab dans le PSE, param\u00e8tres snc\/*, mapping des utilisateurs et diagnostic.","breadcrumb":{"@id":"https:\/\/remivernier.com\/index.php\/2026\/10\/27\/sso-kerberos-sap-gui-netweaver-snc-spn-keytab\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/remivernier.com\/index.php\/2026\/10\/27\/sso-kerberos-sap-gui-netweaver-snc-spn-keytab\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/remivernier.com\/index.php\/2026\/10\/27\/sso-kerberos-sap-gui-netweaver-snc-spn-keytab\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/remivernier.com\/"},{"@type":"ListItem","position":2,"name":"SSO Kerberos vers SAP GUI et SAP NetWeaver: SNC, SPN et keytab expliqu\u00e9s"}]},{"@type":"WebSite","@id":"https:\/\/remivernier.com\/#website","url":"https:\/\/remivernier.com\/","name":"R\u00e9mi VERNIER","description":"Identit\u00e9, s\u00e9curit\u00e9, SAP et IA : Active Directory, Azure &amp; co...","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/remivernier.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":"Person","@id":"https:\/\/remivernier.com\/#\/schema\/person\/a4c76c63a5a3d94454484845e42fc906","name":"R\u00e9mi","image":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/secure.gravatar.com\/avatar\/f750448bc07f5d1d9c1189344283777ec0d33275c184599b199fb6b305bc6fba?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/f750448bc07f5d1d9c1189344283777ec0d33275c184599b199fb6b305bc6fba?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/f750448bc07f5d1d9c1189344283777ec0d33275c184599b199fb6b305bc6fba?s=96&d=mm&r=g","caption":"R\u00e9mi"},"sameAs":["http:\/\/www.linkedin.com\/in\/remi-vernier"]}]}},"_links":{"self":[{"href":"https:\/\/remivernier.com\/index.php\/wp-json\/wp\/v2\/posts\/1238","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/remivernier.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/remivernier.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/remivernier.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/remivernier.com\/index.php\/wp-json\/wp\/v2\/comments?post=1238"}],"version-history":[{"count":1,"href":"https:\/\/remivernier.com\/index.php\/wp-json\/wp\/v2\/posts\/1238\/revisions"}],"predecessor-version":[{"id":1243,"href":"https:\/\/remivernier.com\/index.php\/wp-json\/wp\/v2\/posts\/1238\/revisions\/1243"}],"wp:attachment":[{"href":"https:\/\/remivernier.com\/index.php\/wp-json\/wp\/v2\/media?parent=1238"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/remivernier.com\/index.php\/wp-json\/wp\/v2\/categories?post=1238"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/remivernier.com\/index.php\/wp-json\/wp\/v2\/tags?post=1238"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}