Daily - GuiGui's Showhttps://shaarli.guiguishow.info/Daily shared linksen-enhttps://shaarli.guiguishow.info/ GuiGui's Show - Wednesday 22 September 2021 https://shaarli.guiguishow.info/?do=daily&day=20210922 https://shaarli.guiguishow.info/?do=daily&day=20210922 Wed, 22 Sep 2021 00:00:00 +0200 Erreur « Cert public key did not match the private key in the CSR store » lors de l'upload d'un certificat x509 sur Aruba Mobility Master Wed Sep 22 20:50:46 2021 -
http://shaarli.guiguishow.info/?lbwzbw


Sur l'interface web Aruba Mobility Master (v8.6), je génère une CSR. Je la communique à notre autorité de certification x509 (AC), et j'obtiens un certificat x509.

Je récupère ce certificat au format PEM, je l'uploade dans l'interface web Aruba Mobility Master, et je me mange l'**erreur : « Cert public key did not match the private key in the CSR store »**.
Non, je n'ai pas généré une autre CSR entre-temps. Oui, j'ai bien récupéré le certificat qui correspond à la CSR depuis l'interface web de notre AC.

Solution : **récupérer le certificat au format PKCS#7** (ou PKCS#7 PEM) auprès de notre AC. L'upload fonctionne alors très bien… … …


Error Uploading Certificate: Error : Expecting string of length 1 to 31 | Wireless Access

Wed Sep 22 20:35:31 2021 -
https://community.arubanetworks.com/community-home/digestviewer/viewthread?MID=32743


Sur l'interface web d'Aruba Mobility Master v8.6, je tente d'uploader un nouveau certificat x509 : **« Error : Expecting string of length 1 to 31 ». Il faut que la longueur du nom du fichier contenant le certificat n’excède pas 31 caractères**… … …

J'étais au-dessus car, dans le nom du fichier, nous mettons le common name ainsi que le numéro de commande auprès de notre autorité de certification afin de superviser et de retrouver facilement un certificat. Dingue qu'Aruba ne prenne pas en charge un cas aussi banal.


SSH : sshpass, la connexion SSH par mot de passe non-interactive - Wiki - Wiki

Wed Sep 22 19:11:13 2021 -
https://www.linuxtricks.fr/wiki/ssh-sshpass-la-connexion-ssh-par-mot-de-passe-non-interactive


Un collègue (merci, Maxime) m'a fait découvrir **`sshpass` qui permet d'automatiser / scripter une connexion SSH par mot de passe**. Paquet logiciel du même nom dans Debian.
Le mot de passe est transmis à `sshpass` en argument ou dans un fichier ou dans une variable d'environnement ou dans un descripteur de fichier.

Au final, `sshpass` fonctionne comme [`expect`](https://www.it-connect.fr/expect-loutil-dautomatisation-et-de-deploiement-en-boucle/) : il lance `ssh` (fork(), exec()), il lit la sortie standard, quand ssh demande le mot de passe, il l'envoie sur l'entrée standard. « -P » permet d'ailleurs de changer la chaîne de caractères à laquelle `sshpass` réagit.
Ça signifie aussi que toute demande imprévue de `ssh` est bloquante genre vérification de l'empreinte de la clé du serveur ou demande de la passphrase d'une clé SSH si l'on a une directive « IdentityFile » dans son ssh_config. « -v  » permet de visualiser ce qui bloque.

**Je préfère l'authentification par clé SSH sans passphrase dédiée à un compte utilisateur sur le serveur lui-même dédié à un script / à un ensemble de scripts** d'un même périmètre / giron (cela permet une traçabilité des accès sans contrainte excessive) avec droits d'accès limités (droits fichiers ou droits `sudo` précis), mais c'est intéressant de savoir que **`sshpass` existe pour les cas où l'auth par clé n'est pas en place**.


]]>
GuiGui's Show - Tuesday 21 September 2021 https://shaarli.guiguishow.info/?do=daily&day=20210921 https://shaarli.guiguishow.info/?do=daily&day=20210921 Tue, 21 Sep 2021 00:00:00 +0200 Ubuntu 20.04 : chromium ne fonctionne pas si le dossier personnel est monté en NFS ou si son chemin est inhabituel Tue Sep 21 23:45:01 2021 -
http://shaarli.guiguishow.info/?3IRy2Q


Sur notre parc Ubuntu 20.04, chromium ne fonctionne pas. Chromium est installé avec snap. L'ensemble pose deux problèmes :
  * **Le profil AppArmor livré ne prend pas en charge les homedirs situés ailleurs que dans /home/ et/ou montés en NFS** (non, il ne suffit pas de configurer les variables dans `/etc/apparmor.d/tunables/home.d`, lire ci-dessous pour les détails)  ;
<br />
  * Indépendamment d'AppArmor (le désactiver ne résout pas le problème), **snap ne semble pas gérer des homedirs (dossier personnel) montés en NFS**. Voir : https://bugs.launchpad.net/ubuntu/+source/snapd/+bug/1662552 et https://bugs.launchpad.net/ubuntu/+source/snapd/+bug/1884299.

On notera également que **le dossier Téléchargements se trouve dans `~/snap/chromium/current/Téléchargements`**. Super pratique pour un utilisateur !

Au final, on a installé Google Chrome (qui n'est pas diffusé via snap) et basta. :( On a autre chose à faire que de compiler régulièrement depuis les sources et on n'a pas trouvé de dépôt apt à jour et de confiance (ce qui permettrait de nous passer de snap).

<br />
Démarche (tests effectués) et découverte d'AppArmor :
  * Chemin vers homedir = /home/$uid + absence de NFS : chromium démarre ;

  * Chemin vers homedir = /home/$uid + NFS : chromium ne démarre pas, erreur « cannot open path of the current working directory: Permission denied » ;
    * `cd /tmp/ && chromium-browser` : chromium démarre (+ snap écrit dans $HOME/snap ! Je croyais que t'arrivais pas à y accéder ?!) ;

  * Chemin vers homedir = /home/$nas/$categorie/$uid + NFS : même comportement et même erreur ;
    * `cd /tmp && chromium-browser` : chromium ne démarre pas, erreur « cannot create user data directory: /home/$nas/$categorie/$uid/snap/chromium/1753: Permission denied ». En fonction de la configuration d'AppArmor (voir ci-dessous), l'erreur peut aussi être « cannot create user data directory: /home/$nas/$categorie/$uid/snap/chromium/1753: Stale file handle ».

<br />
Le dernier point est lié au profil AppArmor `/var/lib/snapd/apparmor/profiles/snap-confine.snapd.12883`.
  * Si je désactive totalement AppArmor (ajouter `apparmor=0` dans `GRUB_CMDLINE_LINUX_DEFAULT` dans `/etc/default/grub` puis lancer `update-grub2` puis redémarrer), je n'ai plus de problème pour lancer chromium depuis /tmp (ou autre endroit sans NFS). Sur le web, on lit que la commande `systemctl disable apparmor` et un redémarrage permettent de désactiver AppArmor : ce n'est pas exact ;
<br />
  * Si je passe le profil en mode complain (geindre dans les journaux sans rien bloquer), chromium démarre toujours quand pwd = /tmp. Comme le profil n'est pas dans /etc/apparmor.d, la commande `aa-complain /snap/snapd/12883/usr/lib/snapd/snap-confine` sort en erreur « Profile for /snap/snapd/12883/usr/lib/snapd/snap-confine not found, skipping » (idem avec « /var/lib/snapd/apparmor/profiles/snap-confine.snapd.12883 »). Pour passer outre : `ln -s /var/lib/snapd/apparmor/snap-confine.snapd.12883 /etc/apparmor.d/ && aa-complain /snap/snapd/12883/usr/lib/snapd/snap-confine`. Quid de la pérennité ? « 12883 » dans le nom du profil est la révision de snapd… qui changera lors des mises à jours… ;
<br />
  * Si je passe le profil en mode complain, je m'aperçois qu'AppArmor empêche snap d'accéder à /home/ et /home/$nas en lecture ainsi que d'envoyer des messages réseau pour accéder à notre NAS en NFS. Pour débrayer le premier problème, il faut ajouter les lignes `/home/ r`, et `/home/$nas/ r,` dans le profil. Pour NFS, il faut ajouter une ligne `network,` dans le profil. Puis je recharge le profil avec `apparmor_parser -r /var/lib/snapd/apparmor/profiles/snap-confine.snapd.12883` (on lit souvent que `systemctl reload apparmor` fait le job, mais c'est incorrect). Quid de la pérennité ? « 12883 » dans le nom du profil est la révision de snapd, donc le nom du profil (et/ou son contenu) changera lors des mises à jours… ;
<br />
  * Il est vain de désactiver le profil (`ln -s /var/lib/snapd/apparmor/profiles/snap-confine.snapd.12883 /etc/apparmor.d/disable/` + `reboot`), le lancement de chromium génerera l'erreur « snap-confine has elevated permissions and is not confined but should be. Refusing to continue to avoid permission escalation attacks » ;
<br />
  * Il n'est pas possible de désinstaller AppArmor car snapd dépend de lui et chromium dépend de snapd…


Aruba virtual MM keeps hanging - processes in PROCESS_NOT_RESPONDING_CRITICAL

Tue Sep 21 22:15:19 2021 -
https://www.reddit.com/r/ArubaNetworks/comments/enu1cp/comment/flh4mmd/


Si t'as une **VM Aruba Mobility Master** v8.6 (ArubaOS) sur un hyperviseur **Proxmox + KVM**, convertie depuis l'image disque VMWare livrée par Aruba, il faut la configurer pour **utiliser le chipset q35** (au lieu de i440fx par défaut) **sinon l'interface web Aruba freezera très régulièrement** (affichage partiel + aucune réaction aux clics dans les menus).

J'ai aucune idée de la fonctionnalité du chipset q35 dont ArubaOS a besoin (PCI-E ? :D Secure Boot ? :D AHCI ? vIOMMU ?).

Je rappelle qu'il faut également [choisir un modèle de CPU qui prend en charge les instructions SSSE3 sinon Aruba Mobility master ne démarre pas](/?kyE4yw).


Annuaire LDAP : plusieurs mots de passe pour un utilisateur

Tue Sep 21 21:52:47 2021 -
http://shaarli.guiguishow.info/?__qszQ


Dans un annuaire LDAP genre OpenLDAP, **l'attribut « userPassword » est multi-valué** (plusieurs valeurs), cf le [RFC 2829](https://datatracker.ietf.org/doc/html/rfc2829#section-6.2).

**Il est donc possible d'avoir plusieurs mots de passe pour un même utilisateur**.

Une application qui fait de l'authentification LDAP effectue une seule requête BIND et le serveur LDAP itère sur l'ensemble des attributs userPassword pour tester le mot de passe, donc le comportement ne dépend pas de l'application. (Évidemment, y'a toujours des applications qui tentent d'authentifier un utilisateur sur un annuaire LDAP sans faire de BIND, genre en récupérant l'attribut userPassword, dont le comportement face à plusieurs mots de passe est imprévisible).

Quand on veut diagnostiquer une authentification ou une autorisation (droits dans un logiciel / site web) sans connaître le mot de passe de l'utilisateur qui se plaint d'un problème, sans lui réinitialiser son mot de passe et sans mettre en place tout un processus pour qu'il se rende disponible pour reproduire le problème devant toi, il suffit donc d'ajouter une valeur supplémentaire l'attribut « userPassword ». L'utilisateur continuera d'utiliser son mot de passe et toi, tu utiliseras celui que t'as ajouté. Quand t'as terminé, tu retires ton mot de passe additionnel.

C'est, pour moi, l'équivalent adminsys des frameworks web genre Symfony qui permettent de se faire passer pour un utilisateur et d'obtenir ainsi les mêmes droits.


]]>
GuiGui's Show - Monday 20 September 2021 https://shaarli.guiguishow.info/?do=daily&day=20210920 https://shaarli.guiguishow.info/?do=daily&day=20210920 Mon, 20 Sep 2021 00:00:00 +0200 The House of Gaunt | Lord Voldemort Origins Mon Sep 20 21:41:01 2021 -
https://www.jorisfaucongrimaud.com/thog


**Un court-métrage sympa dans l'univers Harry Potter**. :)

Quelques-uns des souvenirs et informations concernant Voldy que Dumbly a collecté (la visite d'Ogden aux Gaunt, Voldy qui découvre et vole les reliques de Serpentard et de Poufsouffle) et quelques interprétations (arrestation des Gaunt, romance Merope/Jedusor, assassinat des Potter, duel Ogden/Voldy, etc.).


]]>
GuiGui's Show - Monday 6 September 2021 https://shaarli.guiguishow.info/?do=daily&day=20210906 https://shaarli.guiguishow.info/?do=daily&day=20210906 Mon, 06 Sep 2021 00:00:00 +0200 Re : Fail Of The Week: Learning How Not To Silver Solder | Hackaday - Liens en vrac de sebsauvage Mon Sep 6 20:29:16 2021 -
https://sebsauvage.net/links/?3oUWkQ


Je m'interroge…

J'ai aucun doute sur le fait qu'il faut présenter / publier / communiquer sur les ratés.
J'ai aucun doute sur le fait qu'on apprend aussi (mais pas que) en se foirant.

Ma question : **comment différencier un raté définitif** (le problème n'admet pas de solution sauf à retirer certaines contraintes et on sait expliquer cette absence de solution), **d'un raté provisoire** (manque de temps, de compétences, de finances, de ressources, etc.) ?

Exemples :
  * Il y a un an, je n'avais pas idée de comment enrichir ma carte OSM des câbles sous-marins d'Internet avec des informations déjà disponible dans le jeu de données que j'utilise ;
<br />
  * Il y a quelques mois, je ne savais pas configurer un service web précis pour qu'il traite un grand nombre d'utilisateurs simultanés puis je suis entré en contact par hasard avec un informaticien qui bosse à temps plein sur la thèmatique dont fait partie ce logiciel (donc il a creusé le fonctionnement interne, les xxxx combinaisons de paramètres, etc.) qui m'a donné la solution ;

Dans ces deux exemples, **le problème n'était donc pas insoluble. Pourtant, je le croyais**.

Parfois, surtout dans le deuxième exemple, **il n'est pas possible d'identifier un sens au problème ni de le poser différemment**. C'est ce service web précis qu'on veut fournir à nos utilisateurs car c'est le seul à avoir les fonctionnalités désirées, car tout le monde l'a adopté et l'on ne veut pas dépayser nos utilisateurs, etc. Il est de notoriété publique que la techno derrière ce produit est lente, mais tu dois lui faire encaisser masse d'utilisateurs simultanés.

La **recherche de sens est parfois vaine ou entravée**. Quel sens cela a de faire ce que j'ai écrit au paragraphe précédent ? Percevoir un salaire. Pourquoi ? Pour bouffer. Oui, tu pourrais poser différemment le problème de ton approvisionnement alimentaire, mais bon… Par entrave, je pense à des actions liées à des émotions genre tu fais ça pour telle personne car tu tiens à elle.

Demander du temps supplémentaire pour travailler le sujet du service web précis qui doit traiter un grand nombre d'utilisateurs simultanés, ça aurait pu le faire… si j'avais eu des idées sur comment m'y prendre pour avancer, ce qui revient à questionner mes compétences, la disponibilité des connaissances, etc. Il y a donc **un cumul des obstacles**. Donc plein de combinaisons à tester. **Difficile d'avoir une vision complète sur cela. Ça limite la conclusion à tirer d'un échec** (a-t-on identifié et expliqué toutes les causes d'un échec ?).

**Quand bien même il est possible de poser un problème différemment, est-ce sain de le faire ?** Parce qu'au final, quand on fera un retour d'expérience, on dira qu'on a choisi la solution X au lieu de la Y car il y avait un problème. Super info ! Si l'on a un peu creusé, on dira que le problème était plutôt de tel côté (réseau, serveur applicatif, BDD, etc.), mais sans plus. **Notre échec apprendra rien à celui qui nous écoutera jacter. Ni à nous-même**.

Inversement, **chercher à tout prix à comprendre / résoudre un problème n'apportera pas grand chose non plus** genre "je sais résoudre tel bug très précis quand il se produit dans tel contexte très précis, sur telle architecture très précise, etc", ouais, super, je suis le seul au monde à avoir ce contexte précis !

Mettre en œuvre une solution technique, organisationnelle ou procédurale moins démesurée / ambitieuse pour quand même tenir l'objectif recherché peut être casse-gueule : **solution incomplète qui exigera des corrections ultérieures qui sont susceptibles de coûter plus cher**.
 * Genre changer une procédure ou un bout d'organigramme, ça nécessite de changer des habitudes, ce qui prend des années (conduite du changement) ;
<br />
 * Genre les opérations de maintenance régulières d'une solution technique foireuse, ça peut être chronophage (au bout du compte, la solution technique abandonnée car on ne parvenait pas à la mettre en œuvre aurait été moins pénible) ;
<br />
 * Migrer vers une autre solution technique, ça peut aussi prendre des années en fonction du périmètre, du volume de données, du nombre d'interconnexions avec d'autres bouts du système d'informations, etc.


]]>
GuiGui's Show - Sunday 5 September 2021 https://shaarli.guiguishow.info/?do=daily&day=20210905 https://shaarli.guiguishow.info/?do=daily&day=20210905 Sun, 05 Sep 2021 00:00:00 +0200 Fellation, de l'antiquité à Mai 68 Sun Sep 5 22:03:04 2021 -
https://www.youtube.com/watch?v=K-hl-yezBkE&t=298s


> Quand j'analyse les pratiques sexuelles à grande échelle sur 2 000 ans d'histoire, ben prenez la fellation, par exemple, dans l'antiquité, elle est très pratiquée, c'est quelque chose d'assez classique, ça disparaît au Moyen-Âge, ça disparaît sous l'Ancien Régime, et ça revient au 19e siècle par le bordel puis ce sont toutes les femmes qui s'approprient petit à petit cette pratique à partir de Mai 68.

Comme la sodomie et l'homosexualité, quoi.

Mais non, on préfère expliquer que c'est le mézant porno pas beau pas gentil en libre circulation qui détraque la jeunesse et, comme d'hab, tout filtrer sur le réseau (plutôt qu'un contrôle parental), donc faire chier tout le monde au lieu des seuls puritains, ce qui a pour effet de donner des pouvoirs de vérification de l'identité à des acteurs privés (sites de streaming X), ce qui va offrir l'opportunité de dire bonjour aux piratages de ces bases de données qui révéleront, de manière certaine, le petit coquinou que chacun de nous est…


« Le Pen et Zemmour ont tous les deux envie de Béziers »

Sun Sep 5 21:56:13 2021 -
https://www.youtube.com/watch?v=K-hl-yezBkE&t=228s


> Là, on pense que le rendez-vous est sur les rails, que l'une, et l'autre, Le Pen et Zemmour, ont tous les deux envie de Béziers.

:'D


]]>
GuiGui's Show - Sunday 29 August 2021 https://shaarli.guiguishow.info/?do=daily&day=20210829 https://shaarli.guiguishow.info/?do=daily&day=20210829 Sun, 29 Aug 2021 00:00:00 +0200 RGPD & Sites internet - Antichesse (o ^ω^ o) Sun Aug 29 22:28:14 2021 -
https://cakeozolives.com/shaarli-antichesse/?1BTe3g


Dans la théorie, ton analyse (qui en rejoint tant d'autres) tient la route.

Dans la pratique :
  * [Être tracé ou payer : l'association noyb s'attaque au tracking wall](https://www.nextinpact.com/article/47838/etre-trace-ou-payer-association-noyb-sattaque-au-tracking-wall) ;
<br />
  * [News Sites: Readers need to "buy back" their own data at an exorbitant price](https://noyb.eu/en/news-sites-readers-need-buy-back-their-own-data-exorbitant-price).

En France, le Conseil d'État a contraint la CNIL à retirer sa tentative d'interdiction générale de ses lignes directrices au profit d'une analyse au cas par cas. Le fait de ne pas bénéficier d'un site web influe que très peu sur la liberté de choix. Désagrément != préjudice. Or, le RGPD dispose que le consentement est vicié seulement s'il n'y a pas de véritable liberté de choix ou si un préjudice naît du refus.

La justice va devoir identifier le juste milieu. Acheter un abonnement à un journal pour ne pas être fliquer ? Comme l'écrit NOYB, le coût est disproportionné par rapport aux revenus publicitaires perdus quand une personne s'oppose à son flicage, donc le consentement est vicié pour, en réalité, vendre des abonnements par un biais indirect. Quid des articles achetables au détail, pour 1 € ? Chaque site pris individuellement, ça semble être OK, mais si la pratique se généralise, seuls les hauts revenus pourront préserver leur vie privée.

Le levier souligné par NOYB est rigolo : le RGPD dispose que refuser le flicage doit être aussi simple et rapide que de l'accepter. Or, payer (et remplir le formulaire nom + prénom + adresse + …) prend plus de temps.


]]>
GuiGui's Show - Sunday 22 August 2021 https://shaarli.guiguishow.info/?do=daily&day=20210822 https://shaarli.guiguishow.info/?do=daily&day=20210822 Sun, 22 Aug 2021 00:00:00 +0200 Silkhom se torche avec le RGPD Sun Aug 22 12:47:33 2021 -
https://www.silkhom.com/


Silkhom est un cabinet de recrutement spécialisé en informatique.

 * **[Silkhom envoie des lots d'offres d'emploi par email sans recueillir, au préalable, le consentement explicite du candidat](https://www.silkhom.com/)**. Soyons compréhensifs : peut-être que l'intérêt légitime justifie cela. J'ai fait appel à eux pour trouver un emploi, donc m'envoyer des offres d'emploi, c'est raccord. Sauf que mon intention, à l'époque, était de postuler à une seule des offres proposées et ça s'est déroulé ainsi en pratique. **Je n'avais pas souscrit une prestation de recherche d'emploi, je voulais uniquement postuler sur une seule offre**. On est ici dans le mélange des genres de tout cabinet de recrutement : "tu veux postuler sur une offre ? on te capture afin de t'ajouter à notre vitrine et de te vendre à d'autres". Dans ce contexte, me poser la question avant d'inscrire mon adresse emails dans la machine à spams aurait été le minimum ;
<br />
 * **[Silkhom conserve et utilise les données personnelles des candidats 4 ans après le dernier échange](https://www.silkhom.com/). C'est disproportionné par rapport à la finalité exposée**, une aide au retour à l'emploi (je simplifie). Or, dans le secteur informatique, le temps entre deux emplois est largement inférieur à cela (il faut quelques semaines pour retrouver un emploi). Ouiiii, on peut avoir envie de changer d'emploi, mais dans ce cas, je reviendrai de moi-même vers le cabinet de recrutement s'il y a des offres qui m'intéressent. On est ici dans la conséquence d'un marché saturé (recrutement) qui œuvre sur un marché en manque de proies (secteur informatique) : il faut garder des candidats sous le coude si le recruteur ne veut pas finir lui-même sans emploi. Mais ça n'est pas mon problème et ce n'est pas à moi de le porter sur mes épaules ;

   * **La [prétendue politique de confidentialité de Silkhom](<https://www.silkhom.com/vie-privee/>;) stipule une durée de conservation de 2 ans** (hors conservation longue pour répondre aux obligations légales. Ça concerne uniquement les recrutés et ça porte sur un autre jeu de données que CV et adresse emails, donc c'est hors sujet ici). Silkhom ne respecte même pas les engagements qu'elle prend. **On n'est pas sur un problème de RGPD, holala c'est compliqué, mais de respect de la parole donnée** ;

 * **[Silkhom ne répond pas aux emails qui exigent la suppression des données personnelles périmées et l'arrêt des spams](https://www.silkhom.com/)** alors qu'ils sont adressés à l'adresse emails mentionnée dans sa politique de confidentialité. Nous sommes deux mois et demi après ma première demande. Le RGPD dispose une réponse sous un mois (délai qui peut être prolongé si la demande est complexe, etc. mais le demandeur doit en être informé dans le délai d'un mois). Soyons compréhensif : peut-être que mon email est classé comme spam ? Ce n'est pas mon problème, sinon c'est trop facile d'ignorer les demandes. Je ne vais pas envoyer une LRAR à chaque société commerciale qui ne respecte pas le RGPD, sinon ça va me coûter une blinde !

<br />
Faits :
 * En 2017, j'ai postulé (avec succès) à l'une des offres d'emploi dont Silkhom avait la charge. Dernier échange le 15/06/2017 ;
<br />
 * Le 04/06/2021, une première employée de Silkhom m'a envoyé, par email, son lot d'offres d'emploi ;
<br />
 * Le 06/06/2021, je réponds que ce n'est pas conforme au RGPD ni même à la politique de confidentialité de Silkhom. Je demande à ne plus être contacté quel qu'en soit le motif, à ce que toutes mes données personnelles périmées soient supprimées, et à être informé quand ces deux nettoyages auront été effectués. Je mets en copie l'adresse emails mentionnée dans la politique de confidentialité ;
<br />
 * Pas de réponse ;
<br />
 * Le 08/07/2021, un deuxième employé de Silkhom m'a envoyé, par email, son lot d'offres d'emploi ;
<br />
 * Le 08/07/2021, nouvelle réponse de ma part qui reprend l'argumentaire du précédent auquel j'ajoute que je me répète et que le délai de réponse prévu par le RGPD est épuisé. Je mets en copie l'adresse emails mentionnée dans la politique de confidentialité ;
<br />
 * Aucune réponse.

<br />
Pourquoi ce shaarli ?
 * **J'ai déposé une plainte à la CNIL qui va évidemment rien faire** sauf câler un meuble avec ma plainte, bien entendu (et encore…). Ça fait des années que moi et d'autres nous plaignons à la CNIL sur des cas simples et/ou manifestes et que la CNIL roupille ([exemple 1](https://twitter.com/aeris22/status/1397194939809865732), [exemple 2](https://twitter.com/Cellular_PP/status/1318952848185544712), [tout le cirque autour du recueil du consentement au flicage sur les sites web](https://www.laquadrature.net/2019/10/17/le-conseil-detat-autorise-la-cnil-a-ignorer-le-rgpd/), etc.) ;
<br />
 * En comparaison : [Expectra](https://www.expectra.fr/) a fait les mêmes fautes (utiliser des données personnelles sans consentement et largement au-delà de ce stipule sa politique de confidentialité), mais j'ai eu une réponse du DPO à ma relance email… même si le délai d'un mois prévu par le RGPD était dépassé… ;
<br />
 * Que faut-il faire ? Normalement : plainte au pénal. N'est-ce pas excessif pour une conservation débridée de données personnelles et deux spams ? Est-ce que ça valide la """"gravité"""" nécessaire à une plainte (c'est-à-dire une plainte qui ne revient pas en boomerang avec des pénalités à payer pour avoir fait chier le monde pour environ rien) ?
<br />
 * D'où cette [mise au pilori](https://fr.wikipedia.org/wiki/Name_and_shame). Y'en a marre.


]]>
GuiGui's Show - Saturday 21 August 2021 https://shaarli.guiguishow.info/?do=daily&day=20210821 https://shaarli.guiguishow.info/?do=daily&day=20210821 Sat, 21 Aug 2021 00:00:00 +0200 Carte OpenStreetMap des câbles sous-marins d'Internet Sat Aug 21 18:08:50 2021 -
http://shaarli.guiguishow.info/?xlcSCQ


[Carte OpenStreetMap des câbles sous-marins d'Internet](https://framacarte.org/fr/map/submarine-cable-map_72142) / [Internet submarine cables map with OpenStreetMap](https://framacarte.org/fr/map/submarine-cable-map_72142).

**J'ai ajouté des informations à cette carte** (voir ci-dessous).
Plus précisément, j'ai mis à jour [mon script](/data/uploads/2020/04/cartecables/transform_carte_cables_sous-marins.sh) qui transforme des jeux de données géographiques en carte géographique.
[Tutoriel pour utiliser ce script / créer une copie de ma carte](/?UJyNPw).

<br />
### Nouveautés pour les utilisateurs
  * Depuis août 2021, [TeleGeography](https://www2.telegeography.com/), l'auteur des [données géographiques que j'utilise](https://github.com/telegeography/www.submarinecablemap.com/), indique **le fournisseur d'un câble** dans son jeu de données. Je l'affiche ;
<br />
  * La description de la carte (panneau latéral) affiche la liste des câbles. **Un lien hypertexte sur chaque câble permet désormais de visualiser son emplacement sur la carte** ;
<br />
  * Même chose dans la description d'une station d'atterrissement ;
<br />
  * Quand une information (nom du fournisseur, URL du site web de présentation, etc.) n'est pas communiquée par le jeu de données, j'affiche « n/a » plutôt que « null » (valeur JSON pour exprimer "attribut non renseigné") ;
<br />
  * La liste des câbles dans la description de la carte comportait des doublons (qui correspondent à des câbles formant une boucle - pour la résilience - ou qui ont plusieurs embranchements). Désormais ces doublons n'apparaissent plus dans la description de la carte ;
<br />
  * La description de la carte affichait sa date de dernière mise à jour. En sus, j'affiche désormais la date de dernière modification des jeux de données que j'utilise ;
<br />
  * La description de la carte affiche désormais un message informant de la manière de ré-ouvrir le panneau latéral et/ou de revenir à la liste de tous les câbles sans rafraîchir la page ;
<br />
  * La description de la carte affiche désormais un lien vers les dépôts git contenant les jeux de données et un lien vers mon [tutoriel pour fabriquer une copie de cette carte](/?UJyNPw).

<br />
### Nouveautés techniques
  * En août 2021, TeleGeography a publié la nouvelle version de ses jeux de données et il y a des changements (**la joie de dépendre de quelqu'un sans API entre moi et lui pour codifier / formater l'échange de données**) :
    * Le code couleur d'un câble est désormais préfixé par « # » comme attendu par uMap, donc je n'ai plus besoin de préfixer moi-même ;
<br />
    * Avant, pour rassembler les informations concernant un câble éparpillées dans les différents fichiers du jeu de données, il fallait utiliser l'attribut « slug » d'un côté et l'attribut « id » de l'autre. Désormais, l'attribut « id » est présent dans tous les fichiers et l'attribut « slug » a été supprimé (ce qui est une bonne chose) ;
<br />
    * Dans la description d'un câble dans le panneau latéral, il y a la liste des stations d'atterrissement empruntées par ce câble. Un lien sur chaque station permet de visualiser son emplacement sur la carte. Pour ce faire, je récupérais les coordonnées de la station dans le jeu de données d'un câble. Cette information n'est plus présente dans la définition d'un câble (ce qui est une bonne chose : ne pas dupliquer une information car ça complexifie la maintenance). Il faut donc joindre (au sens SQL) le fichier des stations et itérer dessus pour obtenir l'information. Cela allonge le temps de traitement d'environ 50 % ;
<br />
    * La liste des câbles n'est plus triée par ordre alphabétique. Cela m'ennuie pour l'affichage de la liste des câbles dans la description de la carte. Désormais, j'effectue le tri moi-même ;
  * Je conserve une copie du dépôt GitHub de TeleGeography qui contient les jeux de données sur une instance de GitLab auto-hébergée. Une synchronisation automatique a lieu tous les jours à 7 h du matin (UTC+2). Le script utilise ce dépôt par défaut ;
<br />
  * Factorisation des instructions `jq` qui récupèrent les caractéristiques d'un câble ;
<br />
  * Correction de la mise en forme du nom des propriétaires d'un câble : il manquait une espace entre la puce de la liste et le nom du propriétaire ;
<br />
  * Meilleure indentation / mise en forme des instructions `jq` afin d'en faciliter la lecture.


<br />
### Limites connues
  * **Le tracé des câble est interrompu dans l'océan Pacifique**. uMap, le logiciel utilisé pour fabriquer la carte géographique, répète à l'infini le fond de carte mais ne permet pas de répéter les données ajoutées par l'auteur d'une carte. En tout cas, je n'ai aps trouvé comment faire ;
<br />
  * Si l'on tente de rechercher un câble sous-marin dans la liste publiée dans la description de la carte (panneau latéral) avec un **ctrl+f, uMap intercepte la saisie et cherche des noms de ville et de points d'intérêt** dans la base de données d'OpenStreetMap… qui ne connaît bien sûr pas le nom des câbles sous-marins d'Internet. **Je n'ai pas trouvé comment désactiver cela** dans les paramètres de ma carte afin de redonner la main au navigateur web qui, lui, parviendrait à rechercher le nom d'un câble dans la description de la carte. **ÉDIT DU 24/08/2021** : Gwenn me fait remarquer que les navigateurs proposent, par défaut, **d'autres touches pour lancer une recherche : « / » pour Firefox, F3 pour Chrome**, etc. **FIN DE L'ÉDIT**  ;
<br />
  * Quand on clique sur le fond de carte après avoir cliqué sur un câble ou une station d'atterrissement, **le panneau latéral se ferme**. De même, après avoir consulté les caractéristiques d'un câble, on aimerait **revenir à la liste des câbles**. Pour ce faire, il faut **cliquer sur « A propos » tout en bas, tout à droite, en tout petit** ;
<br />
  * Parfois, le tracé d'un câble sous-marin se termine avant d'arriver à une station d'atterrissement. [Exemple](https://framacarte.org/fr/map/submarine-cable-map_72142#14/52.4583/1.7473). Dans les jeux de données que j'utilise, les coordonnées géographiques de la station et du câble divergent bien. Le problème est donc aussi présent sur la [carte originale](https://www.submarinecablemap.com/) mais la limite du niveau de zoom permet de le rendre invisible. Je n'ai pas trouvé comment limiter le niveau de zoom d'une carte construite avec uMap et je ne suis pas certain d'avoir envie de recourir à ce stratagème.


]]>