diff --git a/notes/css.org b/notes/css.org new file mode 100644 index 00000000..486735e0 --- /dev/null +++ b/notes/css.org @@ -0,0 +1,9 @@ +:PROPERTIES: +:ID: d5bc6532-b50e-4155-bb61-7851649b522e +:END: +#+title: css +#+Author: Yann Esposito +#+Date: [2024-07-25] + +- tags :: +- source :: diff --git a/notes/iroh_auth_pto_knowledge_sharing.org b/notes/iroh_auth_pto_knowledge_sharing.org new file mode 100644 index 00000000..3ac15b78 --- /dev/null +++ b/notes/iroh_auth_pto_knowledge_sharing.org @@ -0,0 +1,179 @@ +:PROPERTIES: +:ID: 64f9dd41-188c-47de-867e-fa70a2ee9e18 +:END: +#+title: IROH-Auth PTO knowledge sharing +#+Author: Yann Esposito +#+Date: [2024-07-29] + +- tags :: [[id:ce893df9-32a4-44e0-9eb5-b9817141ee6a][cisco]] +- source :: + +* IROH-Auth Maintenance + +** Daily tasks ; scripts + +1. create a global OAuth2 master client creds +2. configure it into a =~/.cisco.sh.gpg= containing + + #+begin_src bash + IROH_CLIENT_ID="client-xxxxx" + IROH_CLIENT_SECRET="client-xxxxx" + IROH_PROVISIONING_CLIENT_ID="client-xxxxx" + IROH_PROVISIONING_CLIENT_SECRET="client-xxxxx" + #+end_src + + and then + + ~gpg -dq ~/.cisco.sh.gpg|source~ + +3. Connect to all admin VPN +4. Use the scripts; here are the most useful and recently used ones: + + #+begin_src + iroh-scripts/ + ├── add-admin-to-org + ├── add-ai-assistant + ├── add-flag.sh + ├── remove-flag.sh + ├── get-client + ├── patch-client + ├── add-scopes-to-client ;; <- takes care of scopes in the org + ├── add-scopes-to-org + ├── ai-direct-onboard ;; <- just onboard but do not show; need feature-flag + └── client-pass + xdr-provisioning/ + ├── add-flag.sh + ├── add-xdr-flag.sh + ├── full-reprovision.sh + ├── re-provision.sh + ├── sc-provision.sh ;; <- never used for real one of my task to check, not sure I could + ├── sx-only-provision.sh + ├── tsv-to-commands.sh + └── xdr-provision.sh + #+end_src + +*** Recent daily tasks + +- add XDR flag to some QA org +- remove XDR flag to some PROD org (from Danny) +- patch clients from different sources, mixed with webhooks? + +** Provisioning & Onboardings + +Too many Provisioning APIs + +- SXSO migration ⇒ ~/iroh/provisioning~ +- PIAM pre-universal ⇒ ~/iroh/provisioning/platform~ +- PIAM universal (real) ⇒ ~/iroh/external-provisioning~ only PIAM tokens +- PIAM universal copy for QA ⇒ ~/iroh/provisioning/universal-provisioning~ + +After SX EOL: TWO Provisioners; + - PIAM via universal provisioning API and + - SE via PIAM pre-universal API. + +*** Onboarding + +- XDR: PIAM Onboarding: CSC, SXO, DI, SCA +- SC-UI (sometime called SCM): SE Onboarding: SE, CSC, Orbital, DI + +The onboarding conf is mostly what you would put in the ~clj-http/post~. +Recent bugs/weakness: + - body template... ⇒ risk to break content-type and/or parsing as json + - body passed in the request ⇒ no control on this thing.... + - Universal Provisioning ⇒ separate but similar onboarding service... THAT'S + BAD... PR in progress, probably not able to finish + +*** Current risks/potential bugs + +**** PIAM Universal Provisioning + +Universal Provisioning callback. +Flow is: + +1. PIAM -> IROH (provides IROH a /CALLBACK_URL/) +2. IROH -> External Onboarding Service +3. External Onboarding Service -> IROH: save body in callback-response +4. After all onboarding have answered, send response to /CALLBACK_URL/ provided by PIAM + +Wanderson told me, in EU, some does not have any callback url, but PIAM did not +have these as error on their side. + +If an error occurs, we should still respond to PIAM otherwise it is an error on +their side, even if things went well on ours. +There is a cron job, generally just changing the state in the store, will be +enough for the cron job to take care of the rest and return the answer to PIAM. +There is also an endpoint to trigger the cron manually of course. + +**** SE Provisioning + +We added the onboarding ~orbital~ but SE is sending a specific body via the +onboarding API to Orbital. So you cannot use the onboarding for orbital directly. + +SE is mostly alone in dealing with the provisioning. +Their client should have all mandatory scopes, but there is a risk they want more. + + +* SX EOL quickly + +** The flags + +In order to not show the feature-flag mixed with the scopes, there is a new +field ~flags~ inside the ~Org~. + +A single flag has some effect: ~sc~. +If you have this flag, you cannot use SX and are redirected to SC. +After SX EOL, this flag will not have any effect. + +Plan to add a flag with effect with ~sx~ so QA could still use SX in TEST for 1 +year after SX EOL. + + +*** Managing the flags + +https://stunning-barnacle-e4478e20.pages.github.io/admin-ui/ + +Use FF-UI or the scripts + +Note the scopes required to add/remove the flag. +Changed, with should be given to TAC, to should not be given to TAC. +The APIs are hidden under the provisioning APIs both for: ~flags~ and ~feature-flag-scopes~. + +If possible let's deprecate ~feature-flag-scopes~ even if probably the xdr +feature-flag will be there forever. + +** Redirections + +There are new dynamically built fields ~apps~ and ~main-app~. + +- ~apps~ the application the user can use +- ~main-app~ the application the user should default to when we have different choices. + +There is a new ~apps~ section in the ~config~ to know which URL we can use for apps. + +#+begin_src clojure +{:global + {:apps + {:sc + {:module-type-ids-allow-list + ;; would be better with aliases in the config, now with aero we can do it + #{"03d8591b-8374-5666-8fcc-eaea9188193c" + "b6a282ad-be30-4382-b27f-7346320e3b84" + "b7f21c6b-701a-4b45-8a3d-449001844efe" + "b95d5cd0-5bcb-45f6-921c-e2777468f6b0"} + :url "https://secure-client.us.security.cisco.com"} + :sx + {:module-type-ids-allow-list :all, + :url "https://securex.us.security.cisco.com"} + :xdr + {:module-type-ids-allow-list :all, + :url "https://xdr.us.security.cisco.com"}} + } +#+end_src + +This is used by both the UI and the backend to decide where to redirect users. +The rules are a bit complex, but we try our best to prevent a redirect hop via a +UI if we have enough details. + +** Change SX EOL API + +https://iroh-adm.test.iroh.site/admin/maintenance/index.html#/ReleaseBehaviorManagement/put_admin_maintenance_release_behaviors__deadline_id_ diff --git a/notes/journal/2024/2024-07-04.org b/notes/journal/2024/2024-07-04.org new file mode 100644 index 00000000..1cc627ae --- /dev/null +++ b/notes/journal/2024/2024-07-04.org @@ -0,0 +1,85 @@ +#+Title: Journal (2024-07-04 - ∆y=47.33 (17288)) +#+Author: Yann Esposito +#+Date: [2024-07-04] +#+LANG: fr + +* Résume Journée +:PROPERTIES: +:VISIBILITY: content +:CREATED: 20240704 +:END: + +** Matin +:PROPERTIES: +:VISIBILITY: content +:CREATED: 20240704 +:END: + + | Pression au travail ? | 3/5 | + | Motivé de commencer la journée ? | 1/5 | + | Est-ce que je me sens plein d'énergie ? | 3/5 | + | Est-ce que je me sens concentré et préparé ? | 4/5 | + +- Que dois-je faire en dehors du travail ? + +** Soirée +:PROPERTIES: +:CREATED: 20240704 +:END: + | activité φ | ?/5 | au lit -> sport | + | nourriture | ?/5 | mal-bouffe -> saine | + | humeur | ?/5 | exécrable -> excellente | + | énergie | ?/5 | exécrable -> excellente | + | intérêt | ?/5 | ennuie -> exceptionnel | +* 2024-07-04 Thursday +** 13:35 Hello! + +Ça faisait un long moment que je n'avais pas utilisé le journal d'org-mode. +C'est simple, nous sommes le 4 juillet et c'est ma première entrée de l'année. +J'ai pas mal déplacer mes écrit vers org-roam sur des sujets précis. +Mais je me suis aperçu que je n'avais pas les idées assez claires et stables +pour pouvoir vraiment écrire précisement sur certains sujets. +Aussi le journal semble un bon endroit pour éclaircir ses idées sans pour +objectif de les publier ouvertement à tous. +Mais plus comme des notes personnelles. + +*** Leçons acquises en programmation + +Bon j'ai une sorte de tout un tas de connaissances acquises par l'expérience et +je constate en regardant le travail de mes pairs que ce que je considère comme +des connaissances communes ne le sont pas. +Je pense que j'ai eu cette impression trop longtemps parce que je travaille avec +des gens qui partagent une grosse partie de mes goûts et mes préférences dans ce +métier. + +Tout d'abord, il faut être clair, aujourd'hui, je ne pense pas que la création +de programme informatique relève de l'ingénierie. Cela reste, même dans les +grosses structure, plus de l'artisanat que de l'ingénierie. + +C'est-à-dire qu'il n'existe pas, ou disons, très peu, de lois et de règles que +tout le monde doit suivre dans ce métier. +Il y a pourtant certains principes qui en font la spécificité. + +Il a été prouvé que la partie la plus importante pour qu'un projet informatique +soit un succès (attention ce n'est pas très formel) est la bonne gestion de +la complexité. +C'est une évidence pour n'importe quel programmeur avec de l'expérience. +La grande difficulté par contre et de mettre le doit sur quel type de +complexité. +Il y a en effet plusieurs façons d'être complexe. +Il y a une complexité inhérente au système que nous devons fabriquer. +C'est-à-dire, une complexité, impossible à réduire parce qu'elle fait partie du +problème à résoudre. +Et il y a tout un tas d'autres complexités qui viennent se greffer à cette +complexité du problème. +Et c'est souvent là que ce situe le gros des problèmes des projets. +Il faut ajouter à ça, que dans le monde moderne, le problème change avec le +temps pendant la construction de la solution. +Il faut donc non seulement produire une solution au problème demandé, mais en +plus avoir une solution adaptable a des changements non connu à l'avance du +problème. + +Il est donc important de garder à l'esprit des tonnes de contraintes techniques +et humaines lors de l'élaboration et la création d'un programme informatique. + +... diff --git a/notes/journal/2024/2024-08-12.org b/notes/journal/2024/2024-08-12.org new file mode 100644 index 00000000..7e63cf95 --- /dev/null +++ b/notes/journal/2024/2024-08-12.org @@ -0,0 +1,51 @@ +#+Title: Journal (2024-08-13 - ∆y=47.44 (17328)) +#+Author: Yann Esposito +#+Date: [2024-08-13] +#+LANG: fr + +* Résume Journée +:PROPERTIES: +:VISIBILITY: content +:CREATED: 20240813 +:END: + +** Matin +:PROPERTIES: +:VISIBILITY: content +:CREATED: 20240813 +:END: + + | Pression au travail ? | ?/5 | + | Motivé de commencer la journée ? | ?/5 | + | Est-ce que je me sens plein d'énergie ? | ?/5 | + | Est-ce que je me sens concentré et préparé ? | ?/5 | + +- Que dois-je faire en dehors du travail ? + +** Soirée +:PROPERTIES: +:CREATED: 20240813 +:END: + | activité φ | ?/5 | au lit -> sport | + | nourriture | ?/5 | mal-bouffe -> saine | + | humeur | ?/5 | exécrable -> excellente | + | énergie | ?/5 | exécrable -> excellente | + | intérêt | ?/5 | ennuie -> exceptionnel | +* 2024-08-12 Monday +** 00:01 10k days + +10k jours, c'est environ 27 ans et demi. +C'est à peu près le temps qu'il me reste à vivre. + +Sachant que pour devenir un professionnel, on considère qu'il faut environ 10k +heures sur un sujet. Cela signifie qu'à force de 1h par jour sur un sujet +spécifique je pourrais devenir un spécialiste de ce nouveau sujet. + +Étant donné le temps obligatoire à passer sur tous les autres sujets de la vie. +Il serait difficile d'imaginer pouvoir maîtriser plus que deux ou trois autres disciplines. + +Il semblerait qu'en fonction des critères qui me concernent, la probabilité +qu'il me reste au moins 10k jours à vivre soit d'environ 71%. + +Je pense donc qu'il est peut-être temps pour moi de me trouver des objectifs et +d'arriver à avancer vers cet objectif sachant que mon temps est compté. diff --git a/notes/journal/2024/2024-08-13.org b/notes/journal/2024/2024-08-13.org new file mode 100644 index 00000000..cc19549b --- /dev/null +++ b/notes/journal/2024/2024-08-13.org @@ -0,0 +1,36 @@ +#+Title: Journal (2024-08-13 - 9999 - ∆y=47.44 (17328)) +#+Author: Yann Esposito +#+Date: [2024-08-13] +#+LANG: fr +* 2024-08-13 Tuesday +** 07:54 +J'ai modifié mon template de journal. +Je n'ai jamais réussi à me tenir sur les notes, faire des stats, etc… + +Je pourrais seulement y arriver si tout était plus automatique. + +Maintenant on voit une valeur pour le 10k days. + +Bon, je suis en vacances, je ne vais pas trop investir d'énergie pour l'instant. +Mais un des premier objectifs sera de trouver un objectifs pour ces 10k days. + +** 10:36 Transactional relationships + +J'ai lu il y a peu un commentaire qui explique la différence dans les rapports +humains récents. +Une personne expliquait le nombre croissant de rapports simplement +transactionnels entre les individus. +On ne connait plus rien de la vie des gens avec qui nous interagissons. +On ne demande pas sa vie à un livreur Amazon, ou Uber. +Parce que notre contact est trop court pour investir du temps dans ces +discussions la plupart du temps. +Alors que précédemment les personnes avaient le temps de communiquer entre +elles, de prendre des nouvelles de leur famille, de leur vie, de leurs émotions. + +Il s'agit d'une manifestation parmi tant d'autre de la destruction de lien +social. +La première fois que j'ai été exposé à cette idée est assez récente en voyant +un petit exposé de Rolland Gorri. Et le voir lors d'une diffusion d'un +documentaire au cinéma de Martigues. +En cherchant son nom, on voit qu'il participe à une association dont le role est +de re-privilégier le lien social et lutter contre tout ce qui le détruit. diff --git a/notes/journal/2024/2024-08-14.org b/notes/journal/2024/2024-08-14.org new file mode 100644 index 00000000..788de17f --- /dev/null +++ b/notes/journal/2024/2024-08-14.org @@ -0,0 +1,58 @@ +#+Title: Journal (2024-08-14 - 9998 - ∆y=47.44 (17329)) +#+Author: Yann Esposito +#+Date: [2024-08-14] +#+LANG: fr +* 2024-08-14 Wednesday +** 08:56 Espérance de vie résiduelle + +Je viens de penser à cette notion des dix milles jours qui me reste pour être +productif. Mais pour bien vérifier que ces 10k jours semblent réalistes, je suis +tout de même allé me renseigner sur cette notion d'espérance de vie résiduelle. + +A mon âge, il me reste environ 40.7 ans d'espérance de vie résiduelle. +Soit le tableau suivant: + +| Âge | Taux de survie | +|---------+----------------| +| 50 ans | 99.528 % | +| 55 ans | 98.243 % | +| 60 ans | 96.442 % | +| 65 ans | 94.052 % | +| 70 ans | 90.792 % | +| 75 ans | 85.952 % | +| 80 ans | 78.009 % | +| 85 ans | 64.082 % | +| 90 ans | 42.413 % | +| 95 ans | 18.590 % | +| 100 ans | 4.211 % | + +Dans 10k jours, j'aurai 74.81 ans. Donc j'ai un probabilité de survie d'environ 86% +ce qui bien que loin d'être certain permet de faire un paris pas trop risqué sur +le fait d'y arriver. + +Il faut tout de même rajouter qu'il s'agit aussi lors de ces 10k days d'avoir +une activité. Il convient donc de s'informer sur l'espérance de vie sans +incapacité ou incapacité sévère. +En France aujourd'hui, l'espérance de vie sans incapacité d'un homme de 65 ans +est de 10.4 ans, et 15.7 ans sans incapacité sévère. +Ce qui rentre dans les clous des 75 ans que je vise. + +Il a donc été assez chanceux que je pense à ces 10k jours récemment parce qu'on +est assez proche du max à mon âge. + +Bien, il me reste donc 9998j. Et jusqu'ici, je ne sais même pas ce que je vais +faire de ces 10k jours. Je sais juste que c'est le temps qu'il reste et qu'il +faut qu'une partie de ce temps soit utilisé pour faire des choix sur quoi faire. + +** 09:54 Thèmes pour les 10k + +Il serait temps que j'essaye d'établir une liste de thèmes qui pourraient m'intéresser. +Récemment un nouveau thème intéressant est du au effets positifs des rapports +de domination. Pourquoi ils sont essentiels. + +Un autre dans mon domaine est peut-être produire un langage de programmation +encore plus pragmatique qui enlève des features inutiles mais aussi met au +centre du langage des features d'organisation de programmes. +En particulier, un système de gestion de services, de contexte en premier +argument des fonctions. +Un sorte de "Flow Oriented programming"