From 54df346edac6788fd82e51d71fee146e2865a083 Mon Sep 17 00:00:00 2001 From: "Yann Esposito (Yogsototh)" Date: Fri, 24 Dec 2021 11:37:51 +0100 Subject: [PATCH] update --- .gitignore | 1 + .orgids | 2 +- inbox.html | 202 ++ inbox.tmpixImQE.org | 126 -- inbox.tmprVPMxB.org | 126 -- inbox.tmpvFI9v8.org | 126 -- journal.org | 10 +- ...isco_ft_securex_registration.tmpFfE2le.org | 209 -- ...isco_ft_securex_registration.tmpPTkv6L.org | 227 --- ...isco_ft_securex_registration.tmpajfMv6.org | 303 --- ...isco_ft_securex_registration.tmpzz9bMt.org | 304 --- notes/journal/2021/2021-11-06.org | 2 +- notes/journal/2021/2021-11-07.org | 12 +- notes/journal/2021/2021-11-08.org | 4 + notes/journal/2021/2021-11-12.org | 23 +- notes/mdph_recours.tmp7nDXAo.org | 113 -- notes/mdph_recours.tmpCYWwYS.org | 117 -- notes/mdph_recours.tmpcoDUQI.org | 113 -- notes/mdph_recours.tmpkI0rDy.org | 116 -- roam/org-roam.db | Bin 421888 -> 442368 bytes tracker.tmp8YFKFI.org | 108 -- tracker.tmpqvB1XT.org | 1717 ----------------- tracker.tmprXn6OX.org | 1717 ----------------- 23 files changed, 241 insertions(+), 5437 deletions(-) create mode 100644 inbox.html delete mode 100644 inbox.tmpixImQE.org delete mode 100644 inbox.tmprVPMxB.org delete mode 100644 inbox.tmpvFI9v8.org delete mode 100644 notes/cisco_ft_securex_registration.tmpFfE2le.org delete mode 100644 notes/cisco_ft_securex_registration.tmpPTkv6L.org delete mode 100644 notes/cisco_ft_securex_registration.tmpajfMv6.org delete mode 100644 notes/cisco_ft_securex_registration.tmpzz9bMt.org delete mode 100644 notes/mdph_recours.tmp7nDXAo.org delete mode 100644 notes/mdph_recours.tmpCYWwYS.org delete mode 100644 notes/mdph_recours.tmpcoDUQI.org delete mode 100644 notes/mdph_recours.tmpkI0rDy.org delete mode 100644 tracker.tmp8YFKFI.org delete mode 100644 tracker.tmpqvB1XT.org delete mode 100644 tracker.tmprXn6OX.org diff --git a/.gitignore b/.gitignore index 19cd85fe..58882482 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,7 @@ ltximg HWP/ .*.icloud +*.tmp*.org .stack-work/ ._* reveal.js/ diff --git a/.orgids b/.orgids index 59145201..bbdf49ac 100644 --- a/.orgids +++ b/.orgids @@ -1,2 +1,2 @@ -(("../Library/Mobile Documents/iCloud~com~appsonthemove~beorg/Documents/org/notes/how_to_speak.org" "4ad5f64e-c330-4f36-8f8a-d82a1ae993a0") ("../Library/Mobile Documents/iCloud~com~appsonthemove~beorg/Documents/org/notes/interview_certification.org" "93027c33-dcf8-4bda-8aee-60f507e0ff4a") ("../y/her.esy.fun/src/posts/0019-utopia-tv-show/index.org" "88e25182-ee54-4d2e-b373-b4e06fc292c8") ("../y/her.esy.fun/src/posts/0013-how-to-choose-your-tools/index.org" "c2e61938-8493-434a-9ffa-9fd4698d9863") ("../Library/Mobile Documents/iCloud~com~appsonthemove~beorg/Documents/org/notes/cisco_team_history.org" "e3296579-2f2e-4f23-92e2-1ce9fef6fe04") ("../Library/Mobile Documents/iCloud~com~appsonthemove~beorg/Documents/org/notes/customer_manager.org" "99fd9444-ae5d-4d51-a295-a936fc01928a") ("../Library/Mobile Documents/iCloud~com~appsonthemove~beorg/Documents/org/archives/TODO.archive.org" "797ba971-6ae3-49a1-9499-928572760d09" "B72E4288-E96B-4099-8684-37DDF3395C50" "96343FD2-E7A9-4AAA-A40A-8D048DA340E9") ("../Library/Mobile Documents/iCloud~com~appsonthemove~beorg/Documents/org/inbox.org" "9207b53a-e38e-4996-abc6-140c31f2960a" "a4ebd43b-b589-499e-85e1-7ebea0abf3af" "2110820C-4877-40B3-A351-2DEDE0F222C6" "90110976-520D-4B0C-B1D9-3798323C370E" "49981B50-AFBD-4C93-A9C2-8D88550AB425" "8B092321-BA1F-47F9-A927-76D2E232CF51" "1644E007-AFBE-4F4B-9307-B007C60548E8") ("../Library/Mobile Documents/iCloud~com~appsonthemove~beorg/Documents/org/notes/artificial_life_game_approach.org" "8a37b5d3-8ee5-45cd-8c32-021b8d42210f")) +(("../Library/Mobile Documents/iCloud~com~appsonthemove~beorg/Documents/org/inbox.org" "1644E007-AFBE-4F4B-9307-B007C60548E8" "8B092321-BA1F-47F9-A927-76D2E232CF51" "49981B50-AFBD-4C93-A9C2-8D88550AB425" "90110976-520D-4B0C-B1D9-3798323C370E" "2110820C-4877-40B3-A351-2DEDE0F222C6" "a4ebd43b-b589-499e-85e1-7ebea0abf3af" "9207b53a-e38e-4996-abc6-140c31f2960a") ("../Library/Mobile Documents/iCloud~com~appsonthemove~beorg/Documents/org/archives/TODO.archive.org" "96343FD2-E7A9-4AAA-A40A-8D048DA340E9" "B72E4288-E96B-4099-8684-37DDF3395C50" "797ba971-6ae3-49a1-9499-928572760d09") ("../Library/Mobile Documents/iCloud~com~appsonthemove~beorg/Documents/org/notes/artificial_life_game_approach.org" "8a37b5d3-8ee5-45cd-8c32-021b8d42210f") ("../Library/Mobile Documents/iCloud~com~appsonthemove~beorg/Documents/org/notes/customer_manager.org" "99fd9444-ae5d-4d51-a295-a936fc01928a") ("../Library/Mobile Documents/iCloud~com~appsonthemove~beorg/Documents/org/notes/cisco_team_history.org" "e3296579-2f2e-4f23-92e2-1ce9fef6fe04") ("../y/her.esy.fun/src/posts/0013-how-to-choose-your-tools/index.org" "c2e61938-8493-434a-9ffa-9fd4698d9863") ("../y/her.esy.fun/src/posts/0019-utopia-tv-show/index.org" "88e25182-ee54-4d2e-b373-b4e06fc292c8") ("../Library/Mobile Documents/iCloud~com~appsonthemove~beorg/Documents/org/notes/interview_certification.org" "93027c33-dcf8-4bda-8aee-60f507e0ff4a") ("../Library/Mobile Documents/iCloud~com~appsonthemove~beorg/Documents/org/notes/how_to_speak.org" "4ad5f64e-c330-4f36-8f8a-d82a1ae993a0") ("../Library/Mobile Documents/iCloud~com~appsonthemove~beorg/Documents/org/notes/cisco_ft_securex_registration.org" "1208f09c-d37d-4e6b-9110-151f3c6b7d34")) diff --git a/inbox.html b/inbox.html new file mode 100644 index 00000000..9546522e --- /dev/null +++ b/inbox.html @@ -0,0 +1,202 @@ + + + + + + + + TODO + + + + +
+

TODO

+

Yann Esposito

+
+

TODO Réponse MDPH

+

[2021-12-22 Wed 14:44]

+
+
ref
+
+
+
+

Depuis la création du dossier MDPH la situation de ma fille les angoisses de ma filles se sont agravées et nous investigons les moyen de l'aider à s'autonomiser avec l'aide d'un chien d'assistance.

+

Ils nous semble que sa situation actuelle justifie un handicap de 80% ou plus.

+

Tout d'abord, nous avons obtenu une AND à 100% de la sécurité sociale (ci-joins ses attestations de l'assurance maladie). De plus il faut vraiment comprendre que même sans affection physique, ma fille est dans l'incapacité d'accomplir certains actes de la vie quotidienne en société sans ses parents.

+

Soyons clair, une crise d'angoisse de ma fille se caractérise tout d'abord par ce qui est courant en crise d'angoisse, mais la plupart elle monte, jusqu'à une incapacité totale de maîtrise d'elle-même. Elle se recroqueville, elle pleure, elle n'entend ni ne vois ce qui se passe autour d'elle. Parfois il lui arrive de tomber avec ses muscles qui se relachent.

+

Les crises sont provoqués par:

+ +

Parfois, elle peut arriver à se concentrer quelques minutes même dans un environnement sensoriellement difficile. Mais elle ne peut maintenir cette maîtrise de soit pendant plus de quelques minutes. Imaginez simplement qu'attendre dans une file d'attente pendant des courses peut pour elle être un calvaire, et si celà dure trop longtemps, il n'y a pas d'autre choix que de sortir du magasin en laissant le caddie en place pour retourner dans la voiture.

+

Depuis ces derniers mois, elle n'est jamais seule sans un adulte qui lui est familié. Elle ne s'éloigne jamais à plus de quelques mètre des personnes de son entourage.

+

Comme précisé dans le document CNSA sur le guide de l'éligibilité PCH.

+
+

Dès lors que la personne n'est pas en capacité d'initier seule l'activité concernée et qu'en abscence de stimulation, l'activité ou l'acte n'est pas réalisé, la difficulté est considérée comme absolue.

+
+

Et c'est bien de celà qu'il s'agit pour notre fille. Sans notre appuis, elle n'est pas en capacité de répondre aux changements innattendus de sa routine. Elle n'est pas du tout capable de prendre l'initiative d'aller faire des courses pour se faire à manger. Elle n'est pas capable d'entrer dans un transport en commun.

+

Elle est aussi incapable d'entrer dans des lieux scolaire public ou privé ordinaire car ils sont trop bruyant, trop stressants. Nous avons essayer de garder notre fille à la maison pendant cette année de confinement. Mais ce fut un désastre pour ses résultats scolaire mais surtout pour sa capacité à avoir une vie sociale. Nous avons pu trouver un lieu scolaire avec de petits effectifs. Sachant que même dans cet établissement à faible effectif, elle n'est capable d'entrer dans la classe qu'environ 2 à 3 demi-journée par semaine. Notre fille fait chaque jour des efforts considérables pour entrer dans ce lieu avec pour premier objectif retrouver un environnement où elle pourra socialiser. Et en second lieu ne pas décrocher sur ses études. Anna est une élève douée, mais elle a des difficultés simplement à envoyer un devoir qu'elle a fini à cause de l'angoisse de la note et du jugement.

+

Le plan que nous avons établi avec les soignants qui la suivent sont:

+
    +
  1. Des soins pour diminuer ses angoisses et controller ses crises
  2. +
  3. Accompagner son autonomie avec l'aide d'un chien d'assistance qui nous l'espérons pourrait lui permettre d'avoir un rythme qui la socialise et la rassure dans des espaces qui lui sont aujourd'huis interdit sans un accompagnement parental.
  4. +
  5. Continuer à la socialisé en continuant à l'accompagner dans ses études via une école à petit effectif.
  6. +
+

Soyons clair, les difficultés auxquelles fait face notre fille dans l'environnement social sont absolues.

+

Elle ne réalise jamais aucune de ses action de façon spontanée. Il faut que ce soit un des parent qui la pousse à sortir. Celà entrave de façon majeure sa vie quotidienne.

+

Actuellement pour nous, il est essentiel que l'on puisse octroyer à notre fille un chien d'assistance. Elle a déjà réagit très positivement à cette idée. Elle espère pouvoir sortir le chien sans un adulte qui l'accompagnerait. Les critères pour l'obtention d'un chien d'assistance, sont:

+

Un handicap reconnu > à 50% et avoir une Carte Mobilité Inclusion. Il ne nous semble pas du tout exagérer de considérer que ses difficultés actuelles sont absolues et donc bien au delà des 80%. Elle est incapable d'amorcer d'elle même tout geste quotidien qui inclueraient des inconnus dans sa routine.

+ +

Je comprends qu'il soit difficile d'imaginer qu'une personne sans invalidité physique ni déficience mentale grave soit à se point handicapée dans son quotidient. Mais je vous supplie de croire qu'elle est très seule et très isolée. Même dans son école, il est très difficile pour elle d'établir des relations avec des jeunes de son age. Elle a beaucoup de mal à parler avec inconnu même avec un parent proche d'elle. Elle ne peut pas exemple pas dire à une serveuse ce qu'elle désire, elle le dit à un parent qui répètera.

+ + diff --git a/inbox.tmpixImQE.org b/inbox.tmpixImQE.org deleted file mode 100644 index 71058c6e..00000000 --- a/inbox.tmpixImQE.org +++ /dev/null @@ -1,126 +0,0 @@ -# Created 2021-12-22 Wed 15:19 -#+title: TODO -#+author: Yann Esposito -* TODO Réponse MDPH -[2021-12-22 Wed 14:44] -- ref :: - -Depuis la création du dossier MDPH la situation de ma fille les angoisses -de ma filles se sont agravées et nous investigons les moyen de l'aider à -s'autonomiser avec l'aide d'un chien d'assistance. - -Ils nous semble que sa situation actuelle justifie un handicap de 80% ou -plus. - -Tout d'abord, nous avons obtenu une AND à 100% de la sécurité sociale -(ci-joins ses attestations de l'assurance maladie). -De plus il faut vraiment comprendre que même sans affection physique, ma -fille est dans l'incapacité d'accomplir certains actes de la vie -quotidienne en société sans ses parents. - -Soyons clair, une crise d'angoisse de ma fille se caractérise tout d'abord -par ce qui est courant en crise d'angoisse, mais la plupart elle monte, -jusqu'à une incapacité totale de maîtrise d'elle-même. -Elle se recroqueville, elle pleure, elle n'entend ni ne vois ce qui se -passe autour d'elle. Parfois il lui arrive de tomber avec ses muscles qui -se relachent. - -Les crises sont provoqués par: - -- un inconnu qui la touche (par exemple, un enfant a voulu toucher sa - peluche et s'est gentillement jeté sur ma fille. Elle a eu une réaction - d'angoisse totalement inattendue.) -- voir trop de monde -- trop de bruit -- trop de lumière -- l'approche d'un lycée ou d'un collège - -Parfois, elle peut arriver à se concentrer quelques minutes même dans un -environnement sensoriellement difficile. Mais elle ne peut maintenir cette -maîtrise de soit pendant plus de quelques minutes. -Imaginez simplement qu'attendre dans une file d'attente pendant des courses -peut pour elle être un calvaire, et si celà dure trop longtemps, il n'y a -pas d'autre choix que de sortir du magasin en laissant le caddie en place -pour retourner dans la voiture. - -Depuis ces derniers mois, elle n'est jamais seule sans un adulte qui lui -est familié. -Elle ne s'éloigne jamais à plus de quelques mètre des personnes de son -entourage. - -Comme précisé dans le document CNSA sur le guide de l'éligibilité PCH. - -#+begin_quote -Dès lors que la personne n'est pas en capacité d'initier seule l'activité -concernée et qu'en abscence de stimulation, l'activité ou l'acte n'est pas -réalisé, la difficulté est considérée comme absolue. -#+end_quote - -Et c'est bien de celà qu'il s'agit pour notre fille. -Sans notre appuis, elle n'est pas en capacité de répondre aux changements -innattendus de sa routine. -Elle n'est pas du tout capable de prendre l'initiative d'aller faire des -courses pour se faire à manger. -Elle n'est pas capable d'entrer dans un transport en commun. - -Elle est aussi incapable d'entrer dans des lieux scolaire public ou privé -ordinaire car ils sont trop bruyant, trop stressants. -Nous avons essayer de garder notre fille à la maison pendant cette année de -confinement. -Mais ce fut un désastre pour ses résultats scolaire mais surtout pour sa -capacité à avoir une vie sociale. -Nous avons pu trouver un lieu scolaire avec de petits effectifs. Sachant -que même dans cet établissement à faible effectif, elle n'est capable -d'entrer dans la classe qu'environ 2 à 3 demi-journée par semaine. -Notre fille fait chaque jour des efforts considérables pour entrer dans ce -lieu avec pour premier objectif retrouver un environnement où elle pourra -socialiser. -Et en second lieu ne pas décrocher sur ses études. -Anna est une élève douée, mais elle a des difficultés simplement à envoyer -un devoir qu'elle a fini à cause de l'angoisse de la note et du jugement. - -Le plan que nous avons établi avec les soignants qui la suivent sont: - -1. Des soins pour diminuer ses angoisses et controller ses crises -2. Accompagner son autonomie avec l'aide d'un chien d'assistance qui nous - l'espérons pourrait lui permettre d'avoir un rythme qui la socialise et - la rassure dans des espaces qui lui sont aujourd'huis interdit sans un - accompagnement parental. -3. Continuer à la socialisé en continuant à l'accompagner dans ses études - via une école à petit effectif. - - -Soyons clair, les difficultés auxquelles fait face notre fille dans -l'environnement social sont absolues. - -Elle ne réalise jamais aucune de ses action de façon spontanée. -Il faut que ce soit un des parent qui la pousse à sortir. -Celà entrave de façon majeure sa vie quotidienne. - -Actuellement pour nous, il est essentiel que l'on puisse octroyer à notre -fille un chien d'assistance. -Elle a déjà réagit très positivement à cette idée. -Elle espère pouvoir sortir le chien sans un adulte qui l'accompagnerait. -Les critères pour l'obtention d'un chien d'assistance, sont: - -Un handicap reconnu > à 50% et avoir une Carte Mobilité Inclusion. -Il ne nous semble pas du tout exagérer de considérer que ses difficultés -actuelles sont absolues et donc bien au delà des 80%. -Elle est incapable d'amorcer d'elle même tout geste quotidien qui -inclueraient des inconnus dans sa routine. -- Prendre des transports en commun -- Aller dans un lieu d'enseignement public -- Faire des courses -- Conduire -- Faire une simple balade dans la nature - -Je comprends qu'il soit difficile d'imaginer qu'une personne sans -invalidité physique ni déficience mentale grave soit à se point handicapée -dans son quotidient. -Mais je vous supplie de croire qu'elle est très seule et très isolée. -Même dans son école, il est très difficile pour elle d'établir des -relations avec des jeunes de son age. -Elle a beaucoup de mal à parler avec inconnu même avec un parent proche -d'elle. -Elle ne peut pas exemple pas dire à une serveuse ce qu'elle désire, elle le -dit à un parent qui répètera. diff --git a/inbox.tmprVPMxB.org b/inbox.tmprVPMxB.org deleted file mode 100644 index 71058c6e..00000000 --- a/inbox.tmprVPMxB.org +++ /dev/null @@ -1,126 +0,0 @@ -# Created 2021-12-22 Wed 15:19 -#+title: TODO -#+author: Yann Esposito -* TODO Réponse MDPH -[2021-12-22 Wed 14:44] -- ref :: - -Depuis la création du dossier MDPH la situation de ma fille les angoisses -de ma filles se sont agravées et nous investigons les moyen de l'aider à -s'autonomiser avec l'aide d'un chien d'assistance. - -Ils nous semble que sa situation actuelle justifie un handicap de 80% ou -plus. - -Tout d'abord, nous avons obtenu une AND à 100% de la sécurité sociale -(ci-joins ses attestations de l'assurance maladie). -De plus il faut vraiment comprendre que même sans affection physique, ma -fille est dans l'incapacité d'accomplir certains actes de la vie -quotidienne en société sans ses parents. - -Soyons clair, une crise d'angoisse de ma fille se caractérise tout d'abord -par ce qui est courant en crise d'angoisse, mais la plupart elle monte, -jusqu'à une incapacité totale de maîtrise d'elle-même. -Elle se recroqueville, elle pleure, elle n'entend ni ne vois ce qui se -passe autour d'elle. Parfois il lui arrive de tomber avec ses muscles qui -se relachent. - -Les crises sont provoqués par: - -- un inconnu qui la touche (par exemple, un enfant a voulu toucher sa - peluche et s'est gentillement jeté sur ma fille. Elle a eu une réaction - d'angoisse totalement inattendue.) -- voir trop de monde -- trop de bruit -- trop de lumière -- l'approche d'un lycée ou d'un collège - -Parfois, elle peut arriver à se concentrer quelques minutes même dans un -environnement sensoriellement difficile. Mais elle ne peut maintenir cette -maîtrise de soit pendant plus de quelques minutes. -Imaginez simplement qu'attendre dans une file d'attente pendant des courses -peut pour elle être un calvaire, et si celà dure trop longtemps, il n'y a -pas d'autre choix que de sortir du magasin en laissant le caddie en place -pour retourner dans la voiture. - -Depuis ces derniers mois, elle n'est jamais seule sans un adulte qui lui -est familié. -Elle ne s'éloigne jamais à plus de quelques mètre des personnes de son -entourage. - -Comme précisé dans le document CNSA sur le guide de l'éligibilité PCH. - -#+begin_quote -Dès lors que la personne n'est pas en capacité d'initier seule l'activité -concernée et qu'en abscence de stimulation, l'activité ou l'acte n'est pas -réalisé, la difficulté est considérée comme absolue. -#+end_quote - -Et c'est bien de celà qu'il s'agit pour notre fille. -Sans notre appuis, elle n'est pas en capacité de répondre aux changements -innattendus de sa routine. -Elle n'est pas du tout capable de prendre l'initiative d'aller faire des -courses pour se faire à manger. -Elle n'est pas capable d'entrer dans un transport en commun. - -Elle est aussi incapable d'entrer dans des lieux scolaire public ou privé -ordinaire car ils sont trop bruyant, trop stressants. -Nous avons essayer de garder notre fille à la maison pendant cette année de -confinement. -Mais ce fut un désastre pour ses résultats scolaire mais surtout pour sa -capacité à avoir une vie sociale. -Nous avons pu trouver un lieu scolaire avec de petits effectifs. Sachant -que même dans cet établissement à faible effectif, elle n'est capable -d'entrer dans la classe qu'environ 2 à 3 demi-journée par semaine. -Notre fille fait chaque jour des efforts considérables pour entrer dans ce -lieu avec pour premier objectif retrouver un environnement où elle pourra -socialiser. -Et en second lieu ne pas décrocher sur ses études. -Anna est une élève douée, mais elle a des difficultés simplement à envoyer -un devoir qu'elle a fini à cause de l'angoisse de la note et du jugement. - -Le plan que nous avons établi avec les soignants qui la suivent sont: - -1. Des soins pour diminuer ses angoisses et controller ses crises -2. Accompagner son autonomie avec l'aide d'un chien d'assistance qui nous - l'espérons pourrait lui permettre d'avoir un rythme qui la socialise et - la rassure dans des espaces qui lui sont aujourd'huis interdit sans un - accompagnement parental. -3. Continuer à la socialisé en continuant à l'accompagner dans ses études - via une école à petit effectif. - - -Soyons clair, les difficultés auxquelles fait face notre fille dans -l'environnement social sont absolues. - -Elle ne réalise jamais aucune de ses action de façon spontanée. -Il faut que ce soit un des parent qui la pousse à sortir. -Celà entrave de façon majeure sa vie quotidienne. - -Actuellement pour nous, il est essentiel que l'on puisse octroyer à notre -fille un chien d'assistance. -Elle a déjà réagit très positivement à cette idée. -Elle espère pouvoir sortir le chien sans un adulte qui l'accompagnerait. -Les critères pour l'obtention d'un chien d'assistance, sont: - -Un handicap reconnu > à 50% et avoir une Carte Mobilité Inclusion. -Il ne nous semble pas du tout exagérer de considérer que ses difficultés -actuelles sont absolues et donc bien au delà des 80%. -Elle est incapable d'amorcer d'elle même tout geste quotidien qui -inclueraient des inconnus dans sa routine. -- Prendre des transports en commun -- Aller dans un lieu d'enseignement public -- Faire des courses -- Conduire -- Faire une simple balade dans la nature - -Je comprends qu'il soit difficile d'imaginer qu'une personne sans -invalidité physique ni déficience mentale grave soit à se point handicapée -dans son quotidient. -Mais je vous supplie de croire qu'elle est très seule et très isolée. -Même dans son école, il est très difficile pour elle d'établir des -relations avec des jeunes de son age. -Elle a beaucoup de mal à parler avec inconnu même avec un parent proche -d'elle. -Elle ne peut pas exemple pas dire à une serveuse ce qu'elle désire, elle le -dit à un parent qui répètera. diff --git a/inbox.tmpvFI9v8.org b/inbox.tmpvFI9v8.org deleted file mode 100644 index 71058c6e..00000000 --- a/inbox.tmpvFI9v8.org +++ /dev/null @@ -1,126 +0,0 @@ -# Created 2021-12-22 Wed 15:19 -#+title: TODO -#+author: Yann Esposito -* TODO Réponse MDPH -[2021-12-22 Wed 14:44] -- ref :: - -Depuis la création du dossier MDPH la situation de ma fille les angoisses -de ma filles se sont agravées et nous investigons les moyen de l'aider à -s'autonomiser avec l'aide d'un chien d'assistance. - -Ils nous semble que sa situation actuelle justifie un handicap de 80% ou -plus. - -Tout d'abord, nous avons obtenu une AND à 100% de la sécurité sociale -(ci-joins ses attestations de l'assurance maladie). -De plus il faut vraiment comprendre que même sans affection physique, ma -fille est dans l'incapacité d'accomplir certains actes de la vie -quotidienne en société sans ses parents. - -Soyons clair, une crise d'angoisse de ma fille se caractérise tout d'abord -par ce qui est courant en crise d'angoisse, mais la plupart elle monte, -jusqu'à une incapacité totale de maîtrise d'elle-même. -Elle se recroqueville, elle pleure, elle n'entend ni ne vois ce qui se -passe autour d'elle. Parfois il lui arrive de tomber avec ses muscles qui -se relachent. - -Les crises sont provoqués par: - -- un inconnu qui la touche (par exemple, un enfant a voulu toucher sa - peluche et s'est gentillement jeté sur ma fille. Elle a eu une réaction - d'angoisse totalement inattendue.) -- voir trop de monde -- trop de bruit -- trop de lumière -- l'approche d'un lycée ou d'un collège - -Parfois, elle peut arriver à se concentrer quelques minutes même dans un -environnement sensoriellement difficile. Mais elle ne peut maintenir cette -maîtrise de soit pendant plus de quelques minutes. -Imaginez simplement qu'attendre dans une file d'attente pendant des courses -peut pour elle être un calvaire, et si celà dure trop longtemps, il n'y a -pas d'autre choix que de sortir du magasin en laissant le caddie en place -pour retourner dans la voiture. - -Depuis ces derniers mois, elle n'est jamais seule sans un adulte qui lui -est familié. -Elle ne s'éloigne jamais à plus de quelques mètre des personnes de son -entourage. - -Comme précisé dans le document CNSA sur le guide de l'éligibilité PCH. - -#+begin_quote -Dès lors que la personne n'est pas en capacité d'initier seule l'activité -concernée et qu'en abscence de stimulation, l'activité ou l'acte n'est pas -réalisé, la difficulté est considérée comme absolue. -#+end_quote - -Et c'est bien de celà qu'il s'agit pour notre fille. -Sans notre appuis, elle n'est pas en capacité de répondre aux changements -innattendus de sa routine. -Elle n'est pas du tout capable de prendre l'initiative d'aller faire des -courses pour se faire à manger. -Elle n'est pas capable d'entrer dans un transport en commun. - -Elle est aussi incapable d'entrer dans des lieux scolaire public ou privé -ordinaire car ils sont trop bruyant, trop stressants. -Nous avons essayer de garder notre fille à la maison pendant cette année de -confinement. -Mais ce fut un désastre pour ses résultats scolaire mais surtout pour sa -capacité à avoir une vie sociale. -Nous avons pu trouver un lieu scolaire avec de petits effectifs. Sachant -que même dans cet établissement à faible effectif, elle n'est capable -d'entrer dans la classe qu'environ 2 à 3 demi-journée par semaine. -Notre fille fait chaque jour des efforts considérables pour entrer dans ce -lieu avec pour premier objectif retrouver un environnement où elle pourra -socialiser. -Et en second lieu ne pas décrocher sur ses études. -Anna est une élève douée, mais elle a des difficultés simplement à envoyer -un devoir qu'elle a fini à cause de l'angoisse de la note et du jugement. - -Le plan que nous avons établi avec les soignants qui la suivent sont: - -1. Des soins pour diminuer ses angoisses et controller ses crises -2. Accompagner son autonomie avec l'aide d'un chien d'assistance qui nous - l'espérons pourrait lui permettre d'avoir un rythme qui la socialise et - la rassure dans des espaces qui lui sont aujourd'huis interdit sans un - accompagnement parental. -3. Continuer à la socialisé en continuant à l'accompagner dans ses études - via une école à petit effectif. - - -Soyons clair, les difficultés auxquelles fait face notre fille dans -l'environnement social sont absolues. - -Elle ne réalise jamais aucune de ses action de façon spontanée. -Il faut que ce soit un des parent qui la pousse à sortir. -Celà entrave de façon majeure sa vie quotidienne. - -Actuellement pour nous, il est essentiel que l'on puisse octroyer à notre -fille un chien d'assistance. -Elle a déjà réagit très positivement à cette idée. -Elle espère pouvoir sortir le chien sans un adulte qui l'accompagnerait. -Les critères pour l'obtention d'un chien d'assistance, sont: - -Un handicap reconnu > à 50% et avoir une Carte Mobilité Inclusion. -Il ne nous semble pas du tout exagérer de considérer que ses difficultés -actuelles sont absolues et donc bien au delà des 80%. -Elle est incapable d'amorcer d'elle même tout geste quotidien qui -inclueraient des inconnus dans sa routine. -- Prendre des transports en commun -- Aller dans un lieu d'enseignement public -- Faire des courses -- Conduire -- Faire une simple balade dans la nature - -Je comprends qu'il soit difficile d'imaginer qu'une personne sans -invalidité physique ni déficience mentale grave soit à se point handicapée -dans son quotidient. -Mais je vous supplie de croire qu'elle est très seule et très isolée. -Même dans son école, il est très difficile pour elle d'établir des -relations avec des jeunes de son age. -Elle a beaucoup de mal à parler avec inconnu même avec un parent proche -d'elle. -Elle ne peut pas exemple pas dire à une serveuse ce qu'elle désire, elle le -dit à un parent qui répètera. diff --git a/journal.org b/journal.org index 4ed3f945..102e4579 100644 --- a/journal.org +++ b/journal.org @@ -1,13 +1,9 @@ - - * 2021 - ** 2021-08 August - *** 2021-08-31 Tuesday - ** 2021-09 September - *** 2021-09-22 Wednesday - *** 2021-09-23 Thursday +* +* MDPH Anna +Merci de considérer que l'obtention d'une CMI sera critique pour que notre fille puisse obtenir un chien d'assistance qui dan s l'état actuel nous semble indispensable pour qu'elle puisse acquérir sont autonomie. diff --git a/notes/cisco_ft_securex_registration.tmpFfE2le.org b/notes/cisco_ft_securex_registration.tmpFfE2le.org deleted file mode 100644 index b07ffdd5..00000000 --- a/notes/cisco_ft_securex_registration.tmpFfE2le.org +++ /dev/null @@ -1,209 +0,0 @@ -# Created 2021-12-07 Tue 16:36 -#+title: Cisco FT SecureX Simplified Registration -#+date: [2021-12-07 Tue] -#+author: Yann Esposito -- tags :: [[id:299643a7-00e5-47fb-a987-3b9278e89da3][Auth]] -- source :: https://github.com/advthreat/response/issues/821 -- dashboard :: https://github.com/advthreat/iroh/projects/32 - -* Technical Plan -** Support private email vs public emails - -The solution is to use a blacklist of domains where any user could create -multiple email accounts pseudo-anonymously. - -** Support, search admin with same email domain - -We should be able given an email from a user, to find all the orgs for -which at least one of its admin has a matching domain name. - -1. Most efficient: add an invisible field =email-domain= to all users. This - should be lower-case, and we will need a migration. - Doing this we could have a faster match than using string related queries. - -Problems, users can login in the same user, with the same public email with -different emails. -This should be rare. - -1. Search via text match. - - -The algorithm should look a bit like: - -#+begin_src clojure - -;; only when this is an unknown user -;; so a single approval will prevent the user to see this page. -(let [user-email ,,, - domain (string/replace user-email #".*@" "") - users (matching-admins domain) ;; returns a potentially big list of admin users - indexed-orgs (group-by :org-id users)] - (vals indexed-orgs)) -#+end_src - - -Once this list of orgs is found. -We should also check the list of pending or rejected OrgAccessRequest for this user in -order to prevent the user to request access multiple time. - -** Support Org request to admins - -We need to create another Entity for access request to an Org. - -#+begin_src clojure -(s/defschema OrgAccessRequest - (st/merge - {:id UUID - :idp-mapping IdPMapping - :user-email s/Str - :org-id s/Str - :status (s/enum :pending :accepted :rejected) - :created-at DateTime} - (st/optional-keys - {:user-name s/Str - :user-nick s/Str - :approver-id UserId - :approver-email UserEmail ;; email of the approver - :updated-at DateTime - }))) -#+end_src - -When a user request access to an organization. -We should create this object in DB. - -** Support the mechanism to create a new Org Access Request - -After the UserIdentity is known and after retrieving the matching orgs, and -matching org access requests for this UserIdentity. - -We should allow the user to create new OrgAccessRequest. -The way to do this is to create a new POST endpoint. -As the user will not have any JWT at this point. -We might probably build a "UserIdentity JWT" and trust it. -So the webpage could make request on behalf of a UserIdentity and not a User. - -There should be an endpoint: - -#+begin_src http -POST -/iroh/iroh-auth/request-org-access - -Accept: application/json -Content-Type: application/json -User-Agent: ob-http -Authorization: Bearer ${user-jwt} - -{"org-id":"the-id-of-the-org-the-user-request-access-to"} -#+end_src - -After this call the =user-jwt= should contain enough data to retrieve: -- =idp-mapping= -- =user-email= -- all other metas, as user-name, user-nick, etc… - -With this, and if every check matches: - -1. There is a known active admin of this org with an email with the same domain name -2. The org is active - -We should: - -1. create a new =OrgAccessRequest= object in DB. -2. Send emails (see next section) - -** Email Notification of Org Request Accesses - -1. List all the admins of the requested org. -2.a. If there is fewer admins than a number that could be configured in the - node configuration. Then we send an email to all admins. -2.b. If there are more admins than this specific number, then we randomly - chose this maximal number of admins and send them an email notification. - -*TODO* Have an email template (both HTML and Text) - -** Org Requests CRUD API for Admins of the Orgs - -There should be a CRUD API restricted to the ~admin/user-mgmt/org-requests~ scope: - -- ~GET /iroh/user-mgmt/org-requests~ list pending org access requests -- ~GET /iroh/user-mgmt/org-requests/~ read a single org access request -- ~POST /iroh/user-mgmt/org-requests//accept~ Grant the access -- ~POST /iroh/user-mgmt/org-requests//reject~ Reject the access - -*** List - -~GET /iroh/user-mgmt/org-requests~ - -If no parameter is provided, only list pending =OrgAccessRequests= of the org -of the caller. -Otherwise we could pass the query-parameter =status= with the following -value(s): - -- =pending= -- =accepted= -- =rejected= - -Note we should probably support duplicate statuses. -Ex: - -~GET /iroh/user-mgmt/org-requests?status=accepted&status=pending~ - -*** Read - -~GET /iroh/user-mgmt/org-requests/org-request-id~ - -Should returns a 404 if not found or the single Org Access Request object. - -*** Accept the Org Access - -~POST /iroh/user-mgmt/org-requests//accept~ Grant the access - -The body should contain the role (either =admin= or =user=) with the following schema: - -#+begin_src js -{"role":"admin"} -#+end_src - -During the call, should: - -1. Create a new user with: - -#+begin_src clojure -{:user-id (gen-uuid) - :org-id (:org-id org-access-request) - :user-email (:user-email org-access-request) - :idp-mappings [(:idp-mapping org-access-request)] - :user-name (:user-name org-access-request) - :user-nick (:user-nick org-access-request) - :role (get-in request [:body :role]) - :enabled? true - } -#+end_src - -1. Send an email to user confirming his access was granted. - -*TODO* have an email template + text. - -*** Reject the Org Access - -~POST /iroh/user-mgmt/org-requests//reject~ Reject the access - -This call should update the =OrgAccessRequest= object by patching with: - -#+begin_src clojure -{:udpated-at (now) - :approver-id (get-in req [:identity :user :id]) - :approver-email (get-in req [:identity :user :email]) - :status :rejected} -#+end_src - -Then send an email to user confirming his access was denied. - -*TODO* have an email template + text. -** UI Revamp. - -All the page shown during login are hosted in IROH. -So we should revamp all pages and we should probably, take great attention -to every shown webpage. - -*TODO* have UI templates for every page of the workflow. diff --git a/notes/cisco_ft_securex_registration.tmpPTkv6L.org b/notes/cisco_ft_securex_registration.tmpPTkv6L.org deleted file mode 100644 index 9127274b..00000000 --- a/notes/cisco_ft_securex_registration.tmpPTkv6L.org +++ /dev/null @@ -1,227 +0,0 @@ -# Created 2021-12-15 Wed 16:28 -#+title: Cisco FT SecureX Simplified Registration -#+date: [2021-12-07 Tue] -#+author: Yann Esposito -- tags :: [[id:299643a7-00e5-47fb-a987-3b9278e89da3][Auth]] -- source :: https://github.com/advthreat/response/issues/821 -- dashboard :: https://github.com/advthreat/iroh/projects/32 - -* Technical Plan -** Support private email vs public emails - -/Estimate: 1 release cycle after the list is provided./ - -The solution is to use a blacklist of domains where any user could create -multiple email accounts pseudo-anonymously. - -** Support, search admin with same email domain - -/Estimate: 1 release cycle./ -Note: *Work in progress* - -We should be able given an email from a user, to find all the orgs for -which at least one of its admin has a matching domain name. - -1. Most efficient: add an invisible field =email-domain= to all users. This - should be lower-case, and we will need a migration. - Doing this we could have a faster match than using string related queries. - -Problems, users can login in the same user, with the same public email with -different emails. -This should be rare. - -1. Search via text match. - - -The algorithm should look a bit like: - -#+begin_src clojure - -;; only when this is an unknown user -;; so a single approval will prevent the user to see this page. -(let [user-email ,,, - domain (string/replace user-email #".*@" "") - users (matching-admins domain) ;; returns a potentially big list of admin users - indexed-orgs (group-by :org-id users)] - (vals indexed-orgs)) -#+end_src - - -Once this list of orgs is found. -We should also check the list of pending or rejected OrgAccessRequest for this user in -order to prevent the user to request access multiple time. - -** Support Org request to admins - -/Estimate: 4 release cycles/ - -We need to create another Entity for access request to an Org. - -#+begin_src clojure -(s/defschema OrgAccessRequest - (st/merge - {:id UUID - :idp-mapping IdPMapping - :user-email s/Str - :org-id s/Str - :status (s/enum :pending :accepted :rejected) - :created-at DateTime} - (st/optional-keys - {:user-name s/Str - :user-nick s/Str - :approver-id UserId - :approver-email UserEmail ;; email of the approver - :updated-at DateTime - }))) -#+end_src - -When a user request access to an organization. -We should create this object in DB. - -** Support the mechanism to create a new Org Access Request - -/Estimate: 2 release cycle/ - -After the UserIdentity is known and after retrieving the matching orgs, and -matching org access requests for this UserIdentity. - -We should allow the user to create new OrgAccessRequest. -The way to do this is to create a new POST endpoint. -As the user will not have any JWT at this point. -We might probably build a "UserIdentity JWT" and trust it. -So the webpage could make request on behalf of a UserIdentity and not a User. - -There should be an endpoint: - -#+begin_src http -POST -/iroh/iroh-auth/request-org-access - -Accept: application/json -Content-Type: application/json -User-Agent: ob-http -Authorization: Bearer ${user-jwt} - -{"org-id":"the-id-of-the-org-the-user-request-access-to"} -#+end_src - -After this call the =user-jwt= should contain enough data to retrieve: -- =idp-mapping= -- =user-email= -- all other metas, as user-name, user-nick, etc… - -With this, and if every check matches: - -1. There is a known active admin of this org with an email with the same domain name -2. The org is active - -We should: - -1. create a new =OrgAccessRequest= object in DB. -2. Send emails (see next section) - -** Email Notification of Org Request Accesses - -/Estimate: 2 release cycle after email+html templates/ - -1. List all the admins of the requested org. -2.a. If there is fewer admins than a number that could be configured in the - node configuration. Then we send an email to all admins. -2.b. If there are more admins than this specific number, then we randomly - chose this maximal number of admins and send them an email notification. - - - -*TODO* Have an email template (both HTML and Text) -*** Notes - -Need to be able to trigger a new request to join after 7 days. - -** Org Requests CRUD API for Admins of the Orgs - -There should be a CRUD API restricted to the ~admin/user-mgmt/org-requests~ scope: - -- ~GET /iroh/user-mgmt/org-requests~ list pending org access requests -- ~GET /iroh/user-mgmt/org-requests/~ read a single org access request -- ~POST /iroh/user-mgmt/org-requests//accept~ Grant the access -- ~POST /iroh/user-mgmt/org-requests//reject~ Reject the access - -*** List - -~GET /iroh/user-mgmt/org-requests~ - -If no parameter is provided, only list pending =OrgAccessRequests= of the org -of the caller. -Otherwise we could pass the query-parameter =status= with the following -value(s): - -- =pending= -- =accepted= -- =rejected= - -Note we should probably support duplicate statuses. -Ex: - -~GET /iroh/user-mgmt/org-requests?status=accepted&status=pending~ - -*** Read - -~GET /iroh/user-mgmt/org-requests/org-request-id~ - -Should returns a 404 if not found or the single Org Access Request object. - -*** Accept the Org Access - -~POST /iroh/user-mgmt/org-requests//accept~ Grant the access - -The body should contain the role (either =admin= or =user=) with the following schema: - -#+begin_src js -{"role":"admin"} -#+end_src - -During the call, should: - -1. Create a new user with: - -#+begin_src clojure -{:user-id (gen-uuid) - :org-id (:org-id org-access-request) - :user-email (:user-email org-access-request) - :idp-mappings [(:idp-mapping org-access-request)] - :user-name (:user-name org-access-request) - :user-nick (:user-nick org-access-request) - :role (get-in request [:body :role]) - :enabled? true - } -#+end_src - -1. Send an email to user confirming his access was granted. - -*TODO* have an email template + text. - -*** Reject the Org Access - -~POST /iroh/user-mgmt/org-requests//reject~ Reject the access - -This call should update the =OrgAccessRequest= object by patching with: - -#+begin_src clojure -{:udpated-at (now) - :approver-id (get-in req [:identity :user :id]) - :approver-email (get-in req [:identity :user :email]) - :status :rejected} -#+end_src - -Then send an email to user confirming his access was denied. - -*TODO* have an email template + text. -** UI Revamp. - -/Estimate: 2 release cycle after email+html templates/ - -All the page shown during login are hosted in IROH. -So we should revamp all pages and we should probably, take great attention -to every shown webpage. - -*TODO* have UI templates for every page of the workflow. diff --git a/notes/cisco_ft_securex_registration.tmpajfMv6.org b/notes/cisco_ft_securex_registration.tmpajfMv6.org deleted file mode 100644 index 27bfd720..00000000 --- a/notes/cisco_ft_securex_registration.tmpajfMv6.org +++ /dev/null @@ -1,303 +0,0 @@ -# Created 2021-12-16 Thu 15:53 -#+title: Cisco FT SecureX Simplified Registration -#+date: [2021-12-07 Tue] -#+author: Yann Esposito -- tags :: [[id:299643a7-00e5-47fb-a987-3b9278e89da3][Auth]] -- source :: https://github.com/advthreat/response/issues/821 -- dashboard :: https://github.com/advthreat/iroh/projects/32 - -* Functional Spec - -Response issues: -- https://github.com/advthreat/response/issues/821 - -Figma: https://www.figma.com/file/Bz3m25kpWXpdct7AnhmNsW/SXSO-Registeration?node-id=759%3A5926 - -* Technical Plan -** Support private email vs public emails - -/Estimate: 1 release cycles after the list is provided./ - -The solution is to use a blacklist of domains where any user could create -multiple email accounts pseudo-anonymously. - -Details: https://github.com/advthreat/response/issues/979 - -*** Question is about where to put the list? - -/Estimate: 1 release cycles depends on ops/ - -I suggest the list should be a single file in tenzin-config that should be -used on all environments. - -*** Support allow-list exceptions for some Cisco user. - -/Estimate: 1 release cycles after the list is provided./ - -Typically we should allow some users with an email like =some-user+XXX@gmail.com= - -** Support, search admin with same email domain - -/Estimate: 1 release cycle./ -Note: *Work in progress* - -We should be able given an email from a user, to find all the orgs for -which at least one of its admin has a matching domain name. - -1. Most efficient: add an invisible field =email-domain= to all users. This - should be lower-case, and we will need a migration. - Doing this we could have a faster match than using string related queries. - -Problems, users can login in the same user, with the same public email with -different emails. -This should be rare. - -1. Search via text match. - - -The algorithm should look a bit like: - -#+begin_src clojure - -;; only when this is an unknown user -;; so a single approval will prevent the user to see this page. -(let [user-email ,,, - domain (string/replace user-email #".*@" "") - users (matching-admins domain) ;; returns a potentially big list of admin users - indexed-orgs (group-by :org-id users)] - (vals indexed-orgs)) -#+end_src - - -Once this list of orgs is found. -We should also check the list of pending or rejected OrgAccessRequest for this user in -order to prevent the user to request access multiple time. - -** Support Org request to admins - -/Estimate: 4 release cycles/ - -We need to create another Entity for access request to an Org. - -#+begin_src clojure -(s/defschema OrgAccessRequest - (st/merge - {:id UUID - :idp-mapping IdPMapping - :user-email s/Str - :org-id s/Str - :status (s/enum :pending :accepted :rejected) - :created-at DateTime} - (st/optional-keys - {:user-name s/Str - :user-nick s/Str - :approver-id UserId - :approver-email UserEmail ;; email of the approver - :updated-at DateTime - }))) -#+end_src - -When a user request access to an organization. -We should create this object in DB. - -** Login Account Management Page - -/Estimate: 4 release cycles/ - -See Figma: https://www.figma.com/file/Bz3m25kpWXpdct7AnhmNsW/SXSO-Registeration?node-id=759%3A5926 - - -We should change the login flow, so the user might see an intermediate -/login account management page/. -On this /login account management page/ the user should see: - -1. account selection -2. pending invites -3. matching orgs - -To give an idea here is an example of what it will look like: - -#+begin_src -Select Account: - - account-1 - - account-2 -Pending Invites: - - invite for org-1 - - invite for org-2 (expired) [ask for renewal] -Matching Orgs: - - org-4 - - org-5 -#+end_src - -*** Behavior - -If the user is only part of 1 org, and has no invite, and not matching org. -He should not see that page and be redirected directly to his account. - -If the user is only part of 1 org, and has matching org, it is not clear if -we should display that page? - -If all other cases, the "login account management page" - -Note also that if we have a pending invite on a matching email domain org. -The pending invite should take the priority when displaying the org. - -**** Question - -1. pending invite expired -2. matching org - -What should we present the user? - -1. renew invite (send an email to the inviter) -2. request access to the org -3. both 1 and 2 - -*** Technical details - -When the user see this page, we know the =UserIdentity= only. - -We should allow the user to create new =OrgAccessRequest=. -The way to do this is to create a new POST endpoint. -As the user will not have any JWT at this point. -We might probably build a "UserIdentity JWT" and trust it. -So the webpage could make request on behalf of a =UserIdentity= and not a =User=. - -There should be an endpoint: - -#+begin_src http -POST -/iroh/iroh-auth/request-org-access - -Accept: application/json -Content-Type: application/json -User-Agent: ob-http -Authorization: Bearer ${user-identity-jwt} - -{"org-id":"the-id-of-the-org-the-user-request-access-to"} -#+end_src - -After this call the =user-identity-jwt= should contain enough data to retrieve: -- =idp-mapping= -- =user-email= -- all other metas, as user-name, user-nick, etc… - -With this, and if every check matches: - -1. There is a known active admin of this org with an email with the same domain name -2. The org is active - -We should: - -1. create a new =OrgAccessRequest= object in DB. -2. Send emails (see next section) - -** Email Notification of Org Request Accesses - -/Estimate: 4 release cycle after email+html templates/ - -1. List all the admins of the requested org. -2.a. If there is fewer admins than a number that could be configured in the - node configuration. Then we send an email to all admins. -2.b. If there are more admins than this specific number, then we randomly - chose this maximal number of admins and send them an email notification. - - - -*TODO* Have an email template (both HTML and Text) -*** Notes - -Need to be able to trigger a new request to join after 7 days. - -** Org Requests CRUD API for Admins of the Orgs - -/Estimate: 3 release cycle after mail templates + text/ - -There should be a CRUD API restricted to the ~admin/user-mgmt/org-requests~ scope: - -- ~GET /iroh/user-mgmt/org-requests~ list pending org access requests -- ~GET /iroh/user-mgmt/org-requests/~ read a single org access request -- ~POST /iroh/user-mgmt/org-requests//accept~ Grant the access -- ~POST /iroh/user-mgmt/org-requests//reject~ Reject the access - -*** List - -~GET /iroh/user-mgmt/org-requests~ - -If no parameter is provided, only list pending =OrgAccessRequests= of the org -of the caller. -Otherwise we could pass the query-parameter =status= with the following -value(s): - -- =pending= -- =accepted= -- =rejected= - -Note we should probably support duplicate statuses. -Ex: - -~GET /iroh/user-mgmt/org-requests?status=accepted&status=pending~ - -*** Read - -~GET /iroh/user-mgmt/org-requests/org-request-id~ - -Should returns a 404 if not found or the single Org Access Request object. - -*** Accept the Org Access - -~POST /iroh/user-mgmt/org-requests//accept~ Grant the access - -The body should contain the role (either =admin= or =user=) with the following schema: - -#+begin_src js -{"role":"admin"} -#+end_src - -During the call, should: - -1. Create a new user with: - -#+begin_src clojure -{:user-id (gen-uuid) - :org-id (:org-id org-access-request) - :user-email (:user-email org-access-request) - :idp-mappings [(:idp-mapping org-access-request)] - :user-name (:user-name org-access-request) - :user-nick (:user-nick org-access-request) - :role (get-in request [:body :role]) - :enabled? true - } -#+end_src - -1. Send an email to user confirming his access was granted. - -*TODO* have an email template + text. - -*** Reject the Org Access - -~POST /iroh/user-mgmt/org-requests//reject~ Reject the access - -This call should update the =OrgAccessRequest= object by patching with: - -#+begin_src clojure -{:udpated-at (now) - :approver-id (get-in req [:identity :user :id]) - :approver-email (get-in req [:identity :user :email]) - :status :rejected} -#+end_src - -Then send an email to user confirming his access was denied. - -*TODO* have an email template + text. -** UI Revamp. - -/Estimate: 2 release cycle after email+html templates/ - -All the page shown during login are hosted in IROH. -So we should revamp all pages and we should probably, take great attention -to every shown webpage. -Typically, the look and feel is different for all pages. So we might -probably take care of the OAuth2 authorization pages as well as the error pages. - -*TODO* have UI templates for every page of the workflow. diff --git a/notes/cisco_ft_securex_registration.tmpzz9bMt.org b/notes/cisco_ft_securex_registration.tmpzz9bMt.org deleted file mode 100644 index 09f86d43..00000000 --- a/notes/cisco_ft_securex_registration.tmpzz9bMt.org +++ /dev/null @@ -1,304 +0,0 @@ -# Created 2021-12-22 Wed 15:50 -#+title: Cisco FT SecureX Simplified Registration -#+date: [2021-12-07 Tue] -#+author: Yann Esposito -- tags :: [[id:299643a7-00e5-47fb-a987-3b9278e89da3][Auth]] -- source :: https://github.com/advthreat/response/issues/821 -- dashboard :: https://github.com/advthreat/iroh/projects/32 - -* Functional Spec - -Response issues: -- https://github.com/advthreat/response/issues/821 - -Figma: https://www.figma.com/file/Bz3m25kpWXpdct7AnhmNsW/SXSO-Registeration?node-id=759%3A5926 - -* Technical Plan -** Support private email vs public emails - -/Estimate: 1 release cycles after the list is provided./ - -The solution is to use a blacklist of domains where any user could create -multiple email accounts pseudo-anonymously. - -Details: https://github.com/advthreat/response/issues/979 - -*** Question is about where to put the list? - -/Estimate: 1 release cycles depends on ops/ - -I suggest the list should be a single file in tenzin-config that should be -used on all environments. - -*** Support allow-list exceptions for some Cisco user. - -/Estimate: 1 release cycles after the list is provided./ - -Typically we should allow some users with an email like =some-user+XXX@gmail.com= - -** Support, search admin with same email domain - -/Estimate: 1 release cycle./ -Note: *Work in progress* - -We should be able given an email from a user, to find all the orgs for -which at least one of its admin has a matching domain name. - -1. Most efficient: add an invisible field =email-domain= to all users. This - should be lower-case, and we will need a migration. - Doing this we could have a faster match than using string related queries. - -Problems, users can login in the same user, with the same public email with -different emails. -This should be rare. - -1. Search via text match. - - -The algorithm should look a bit like: - -#+begin_src clojure - -;; only when this is an unknown user -;; so a single approval will prevent the user to see this page. -(let [user-email ,,, - domain (string/replace user-email #".*@" "") - users (matching-admins domain) ;; returns a potentially big list of admin users - indexed-orgs (group-by :org-id users)] - (vals indexed-orgs)) -#+end_src - - -Once this list of orgs is found. -We should also check the list of pending or rejected OrgAccessRequest for this user in -order to prevent the user to request access multiple time. - -** Support Org request to admins - -/Estimate: 4 release cycles/ - -We need to create another Entity for access request to an Org. - -#+begin_src clojure -(s/defschema OrgAccessRequest - (st/merge - {:id UUID - :idp-mapping IdPMapping - :user-email s/Str - :org-id s/Str - :status (s/enum :pending :accepted :rejected) - :created-at DateTime} - (st/optional-keys - {:user-name s/Str - :user-nick s/Str - :approver-id UserId - :approver-email UserEmail ;; email of the approver - :updated-at DateTime - }))) -#+end_src - -When a user request access to an organization. -We should create this object in DB. - -** Login Account Management Page - -/Estimate: 4 release cycles/ - -See Figma: https://www.figma.com/file/Bz3m25kpWXpdct7AnhmNsW/SXSO-Registeration?node-id=759%3A5926 - - -We should change the login flow, so the user might see an intermediate -/login account management page/. -On this /login account management page/ the user should see: - -1. account selection -2. pending invites -3. matching orgs - -To give an idea here is an example of what it will look like: - -#+begin_src -Select Account: - - account-1 - - account-2 -Pending Invites: - - invite for org-1 - - invite for org-2 (expired) [ask for renewal] -Matching Orgs: - - org-4 - - org-5 -#+end_src - -*** Behavior - -If the user is only part of 1 org, and has no invite, and not matching org. -He should not see that page and be redirected directly to his account. - -If the user is only part of 1 org, and has matching org, it is not clear if -we should display that page? - -If all other cases, the "login account management page" - -Note also that if we have a pending invite on a matching email domain org. -The pending invite should take the priority when displaying the org. - -**** Question - -1. pending invite expired -2. matching org - -What should we present the user? - -1. renew invite (send an email to the inviter) -2. request access to the org -3. both 1 and 2 - -*** Technical details - -When the user see this page, we know the =UserIdentity= only. - -We should allow the user to create new =OrgAccessRequest=. -The way to do this is to create a new POST endpoint. -As the user will not have any JWT at this point. -We might probably build a "UserIdentity JWT" and trust it. -So the webpage could make request on behalf of a =UserIdentity= and not a =User=. - -There should be an endpoint: - -#+begin_src http -POST -/iroh/iroh-auth/request-org-access - -Accept: application/json -Content-Type: application/json -User-Agent: ob-http -Authorization: Bearer ${user-identity-jwt} - -{"org-id":"the-id-of-the-org-the-user-request-access-to"} -#+end_src - -After this call the =user-identity-jwt= should contain enough data to retrieve: -- =idp-mapping= -- =user-email= -- all other metas, as user-name, user-nick, etc… - -With this, and if every check matches: - -1. There is a known active admin of this org with an email with the same domain name -2. The org is active - -We should: - -1. create a new =OrgAccessRequest= object in DB. -2. Send emails (see next section) - -** Email Notification of Org Request Accesses - -/Estimate: 4 release cycle after email+html templates/ - -1. List all the admins of the requested org. -2.a. If there is fewer admins than a number that could be configured in the - node configuration. Then we send an email to all admins. -2.b. If there are more admins than this specific number, then we randomly - chose this maximal number of admins and send them an email notification. - - - -*TODO* Have an email template (both HTML and Text) -*** Notes - -Need to be able to trigger a new request to join after 7 days. - -** Org Requests CRUD API for Admins of the Orgs - -/Estimate: 3 release cycle after mail templates + text/ - -There should be a CRUD API restricted to the ~admin/user-mgmt/org-requests~ scope: - -- ~GET /iroh/user-mgmt/org-requests~ list pending org access requests -- ~GET /iroh/user-mgmt/org-requests/~ read a single org access request -- ~POST /iroh/user-mgmt/org-requests//accept~ Grant the access -- ~POST /iroh/user-mgmt/org-requests//reject~ Reject the access - -*** List - -~GET /iroh/user-mgmt/org-requests~ - -If no parameter is provided, only list pending =OrgAccessRequests= of the org -of the caller. -Otherwise we could pass the query-parameter =status= with the following -value(s): - -- =pending= -- =accepted= -- =rejected= - -Note we should probably support duplicate statuses. -Ex: - -~GET /iroh/user-mgmt/org-requests?status=accepted&status=pending~ - -*** Read - -~GET /iroh/user-mgmt/org-requests/org-request-id~ - -Should returns a 404 if not found or the single Org Access Request object. - -*** Accept the Org Access - -~POST /iroh/user-mgmt/org-requests//accept~ Grant the access - -The body should contain the role (either =admin= or =user=) with the following schema: - -#+begin_src js -{"role":"admin"} -#+end_src - -During the call, should: - -1. Create a new user with: - -#+begin_src clojure -{:user-id (gen-uuid) - :org-id (:org-id org-access-request) - :user-email (:user-email org-access-request) - :idp-mappings [(:idp-mapping org-access-request)] - :user-name (:user-name org-access-request) - :user-nick (:user-nick org-access-request) - :role (get-in request [:body :role]) - :enabled? true - } -#+end_src - -1. Send an email to user confirming his access was granted. - -*TODO* have an email template + text. - -*** Reject the Org Access - -~POST /iroh/user-mgmt/org-requests//reject~ Reject the access - -This call should update the =OrgAccessRequest= object by patching with: - -#+begin_src clojure -{:udpated-at (now) - :approver-id (get-in req [:identity :user :id]) - :approver-email (get-in req [:identity :user :email]) - :status :rejected} -#+end_src - -Then send an email to user confirming his access was denied. - -*TODO* have an email template + text. -** UI Revamp. - -/Estimate: 2 release cycle after email+html templates/ - -All the page shown during login are hosted in IROH. -So we should revamp all pages and we should probably, take great attention -to every shown webpage. -Typically, the look and feel is different for all pages. So we might -probably take care of the OAuth2 authorization pages as well as the error pages. - -*TODO* have UI templates for every page of the workflow. -- https://github.com/advthreat/GLaDOS/issues/2667 diff --git a/notes/journal/2021/2021-11-06.org b/notes/journal/2021/2021-11-06.org index c982c9ad..1abc1dbb 100644 --- a/notes/journal/2021/2021-11-06.org +++ b/notes/journal/2021/2021-11-06.org @@ -52,7 +52,7 @@ une angine. Et c'est ce qu'elle pensait avoir. Mais elle a attrapé la COVID. D'après ses mots, ça a été un enfer. -Des températures à 40, des nausées, etc... +Des températures à 40, des nausées, etc… J'ai essayé de lui expliquer qu'il fallait se faire vacciner, une seule dose pour se protéger. Mais j'ai bien peur qu'elle n'en fasse rien. diff --git a/notes/journal/2021/2021-11-07.org b/notes/journal/2021/2021-11-07.org index f999ad04..bd3ca561 100644 --- a/notes/journal/2021/2021-11-07.org +++ b/notes/journal/2021/2021-11-07.org @@ -134,7 +134,13 @@ Le concept est que ça met l'accent sur la phrase en cours d'écriture seulement Cela donne une sensation de focus sur la phrase en cours d'écriture. Enfin, c'est la classe franchement. -Je suis vraiment content aussi de ma façon d'avoir écrit le theme en -utilisant un système de couleur hsl. J'ai tout fixé, sauf la luminosité. -En mode nuit, vraiment, les choses reste vraiment sombre, est c'est parfait pour faire le focus. +Je suis vraiment content aussi de ma façon d'avoir écrit le theme en utilisant +un système de couleur hsl. +J'ai tout fixé, sauf la luminosité. +En mode nuit, vraiment, les choses reste vraiment sombre, est c'est parfait pour +faire le focus. Vraiment je suis content. +Idéallement, il faudrait pouvoir charger le theme en runtime avec un paramètre. +Par exemple, la couleur principale. +J'ai choisi une Hue à 218, ça correspond un peu à la couleur de Nord. +Enfin, c'est la classe, dans tous les cas. diff --git a/notes/journal/2021/2021-11-08.org b/notes/journal/2021/2021-11-08.org index 6283d287..f35144f7 100644 --- a/notes/journal/2021/2021-11-08.org +++ b/notes/journal/2021/2021-11-08.org @@ -41,3 +41,7 @@ J'ai un pb pour me souvenir du theme précédent. bouh.... ** 16:39 It works!!!! +** 17:04 +Woooo!!!! +Mon plugin zen-writer c'est de la boulette. +Ça marche trop bien! diff --git a/notes/journal/2021/2021-11-12.org b/notes/journal/2021/2021-11-12.org index 9a63ddd0..fed91499 100644 --- a/notes/journal/2021/2021-11-12.org +++ b/notes/journal/2021/2021-11-12.org @@ -33,7 +33,7 @@ | intérêt | ?/5 | ennuie -> exceptionnel | * 2021-11-12 Friday ** 11:39 -Bien, Anna a réussie à aller en cour aujour'hui. J'en suis ravi. +Bien, Anna a réussie à aller en cour aujourd'hui. J'en suis ravi. Je vais aller à mon rendez-vous dans quelques minutes. J'ai été pris d'une terrible crise d'angoisse ce matin. Elle n'est pas entièrement passée. @@ -42,6 +42,23 @@ Et je n'arrive pas vraiment à identifier l'origine du problème. Je verrai. Nous avons joué à Carcassonne avec Krystelle. Cela m'a détendu. ** 23:28 -Je viend de finir de regarder le dernier épisode de Foundation. -Bon, celà reste intéressant. +Je viens de finir de regarder le dernier épisode de Foundation. +Bon, cela reste intéressant. Mais ça manque de tenue. + + +Petite réflexion du jour sur le manque de programme pour lequel on puisse imaginer que les programmes continueront à fonctionner dans 10 ans, 20 ans, 40 ans. + +C'est un vrai point faible de notre industrie. +Et de la science qui lui est associée. +Le manque d'une lingua franca. +Peut-être est-elle au niveau d'une VM (comme la JVM?) +J'en doute, un tel système ne s'adapterait pas à un nouveau modèle de calcul des +processeurs. +Qui sait de quoi les processeurs de demain seront fait. +Quelles opérations seront faisables et rapides, lesquelles seront impossibles. +Comment gerrer le parallelisme, la concurrence, les accès mémoires sécurisés, +etc... + +Ensuite, au niveau des langages eux mêmes quels sont les bonnes abstractions. +A quel moment est-on trop bas niveau ? Trop haut ? etc... diff --git a/notes/mdph_recours.tmp7nDXAo.org b/notes/mdph_recours.tmp7nDXAo.org deleted file mode 100644 index 9b8ecb0c..00000000 --- a/notes/mdph_recours.tmp7nDXAo.org +++ /dev/null @@ -1,113 +0,0 @@ -# Created 2021-12-22 Wed 22:27 -#+title: MDPH recours -#+date: [2021-12-22 Wed] -#+author: Yann & Krystelle Esposito -#+lang: fr - -Nous demandons une réévaluation du dossier de notre fille, soit: - -- *une reconnaissance d'handicap supérieure à 80%* (avec réévaluation à la hausse de - l'AEEH complémentaire) -- la *CMI Invalidité/Priorité* indispensable à la réalisation de son projet - de vie (en accord avec les soignants) -- la *CMI Stationnement* - -* Demande reconnaissance d'au moins 80% de handicap - -Depuis avril 2021, date de la demande de création de dossier MDPH, -l'*anxiété* et l'*autonomie* de notre fille Anna se sont *dégradées*. - -Une *ALD à 100%* vient de lui être octroyée (cf attestation). -Compte tenu de la majoration de ses angoisses et en s'appuyant sur le guide -d'appui aux pratiques des maisons départementales des personnes handicapées -de la Caisse Nationale de Solidarité pour l'Autonomie (CNSA, cf document en -annexe) Anna est dans l'_incapacité absolue_ de réaliser des actes et -activités simples de la vie courante comme : - -- faire des courses seule à cause de ses hypersensibilités ; -- se diriger et agir seule en ville ; -- prendre les transports en commun ; incapacité de programmer un trajet et - surtout de répondre à un évènement inattendu comme adapter son itinéraire - en cas de dysfonctionnement. -- suivre un enseignement dans un établissement classique -- initier une sortie en extérieur - -C'est pourquoi nous vous demandons de réévaluer son taux de handicap à au -moins 80%. -Et aussi par conséquent de réévaluer l'AEEH complémentaire à la hausse. - -** Description des crises - -L'intensité des crises d'angoisses autistiques de notre fille sont -invalidantes. -Ses dernières vont jusqu'à provoquer une incapacité à se mouvoir, -hyperventilation, cécité et surdité temporaires, pertes de sensations. -Lors des crises les risques de chutes sont présents car elle n'arrive pas à -tenir la station debout. -Afin d'assurer sa sécurité il est pratiquement impossible de la laisser -seule, sauf chez elle. - -Les crises sont provoquées par : - -- *un contact, même léger* : une personne qui la frôle suffit à provoquer une - crise. Par exemple, récemment une enfant à voulu toucher sa peluche - lestée en se précipitant sur elle. Anna n'a pas su comment se "mettre en - sécurité" ce qui à provoquer une crise que nous avons eu du mal à apaiser. -- *trop de monde* -- *les hyperstimulations sensorielles*, par exemple, bruit de moteur - inattendu, un feu clignotant, lumière trop vive, etc… - -Elle n'arrive à gérer les hyperstimulations que pendant une courte période. -Attendre à une caisse peut, pour elle, être elle un calvaire. -Si cela dure un peu trop longtemps, ou qu'une personne la touche par -inadvertance, il n'y a pas d'autre solution que de sortir du magasin, en -laissant le caddie pour retourner dans la voiture. -Je vous laisse imaginer la difficulté pour traverser un parking avec une -personne en crise que l'on ne peut pas toucher, qui ne voit et n'entend -pratiquement rien ! - -C'est pour cela que nous vous demandons la CMI Invalidité/Priorité et -Stationnement. - -** Scolarité - -La phobie scolaire de notre fille l'empêche d'avoir un enseignement dans un -établissement ordinaire. -Nous avons essayé le CNED à domicile, cela fut un échec, car son anxiété de -performance et son isolement social ont été à leurs apogées. - -Pour l'aider, depuis septembre, nous avons orienté Anna vers un -établissement privé à très petit effectif. -Cela est toujours difficile pour elle (incapacité à assister à tous les -cours à cause de son anxiété et de sa fatiguabilité), mais nous avons -constaté avec les équipes médicales et pédagogiques de réels progrès -d'autant plus qu'Anna est douée, motivée et intéressée par les études. - -Cependant cela à un coût élevé. - -* Chien d'assistance - -Pour la soutenir dans ses efforts et avec l'appui de sa psychiatre et de -son psychologue (cf certificats médicaux joins) nous avons pour projet -d'adopter un chien d'assistance qui pourrait : - -- agir sur son état anxieux et maîtriser ses crises d'angoisses ; -- être un moteur déterminant pour son autonomie future ; -- rendre son handicap visible en rendant les inconnus plus conscient - des difficultés d'Anna ; -- initier des sorties en extérieur et sociabiliser grâce à l'animal ; -- faciliter son autonomie en lui permettant d'accéder aux lieux publics. - -Anna est très motivée par ce projet, c'est pourquoi il est indispensable -qu'elle puisse bénéficier de la carte CMI ainsi que d'un taux de handicap -reconnu à au moins 50% sans lesquels un chien d'assistance ne pourrait pas -lui être attribué. - -* Conclusion - -Bien que le TSA ne sera jamais soigné, avec les bons soins et les bons -outils, elle peut arriver à vivre avec ses phobies et devenir un membre -actif, responsable et épanouie de notre société. -C'est pourquoi nous avons besoin de la reconnaissance de handicap d'au moins -80% et de la carte CMI Invalidité/Priorité pour qu'on puisse lui attribuer -un chien d'assistance qui est essentiel à la réalisation de son projet de vie. diff --git a/notes/mdph_recours.tmpCYWwYS.org b/notes/mdph_recours.tmpCYWwYS.org deleted file mode 100644 index cc49ecf4..00000000 --- a/notes/mdph_recours.tmpCYWwYS.org +++ /dev/null @@ -1,117 +0,0 @@ -# Created 2021-12-22 Wed 21:43 -#+title: MDPH recours -#+date: [2021-12-22 Wed] -#+author: Yann Esposito -#+lang: fr - -- tags :: - -- source :: - -Nous demandons une réévaluation du dossier de notre fille, soit: - -- *une reconnaissance d'handicap supérieure à 80%* (avec réévaluation à la hausse de - l'AEEH complémentaire) -- la *CMI Invalidité/Priorité* indispensable à la réalisation de son projet - de vie (en accord avec les soignants) -- la *CMI Stationnement* - -* Demande reconnaissance d'au moins 80% de handicap - -Depuis avril 2021, date de la demande de création de dossier MDPH, -l'*anxiété* et l'*autonomie* de notre fille Anna se sont *dégradées*. - -Une *ALD à 100%* vient de lui être octroyée (cf attestation). -Compte tenu de la majoration de ses angoisses et en s'appuyant sur le guide -d'appui aux pratiques des maisons départementales des personnes handicapées -de la Caisse Nationale de Solidarité pour l'Autonomie (CNSA, cf document en -annexe) Anna est dans l'_incapacité absolue_ de réaliser des actes et -activités simples de la vie courante comme : - -- faire des courses seule à cause de ses hypersensibilités ; -- se diriger et agir seule en ville ; -- prendre les transports en commun ; incapacité de programmer un trajet et - surtout de répondre à un évènement inattendu comme adapter son itinéraire - en cas de dysfonctionnement. -- suivre un enseignement dans un établissement classique -- initier une sortie en extérieur - -C'est pourquoi nous vous demandons de réévaluer son taux de handicap à au -moins 80%. -Et aussi par conséquent de réévaluer l'AEEH complémentaire à la hausse. - -** Description des crises - -L'intensité des crises d'angoisses autistiques de notre fille sont -invalidantes. -Ses dernières vont jusqu'à provoquer une incapacité à se mouvoir, -hyperventilation, cécité et surdité temporaires, pertes de sensations. -Lors des crises les risques de chutes sont présents car elle n'arrive pas à -tenir la station debout. -Afin d'assurer sa sécurité il est pratiquement impossible de la laisser -seule, sauf chez elle. - -Les crises sont provoquées par : - -- *un contact, même léger* : une personne qui la frôle suffit à provoquer une - crise. Par exemple, récemment une enfant à voulu toucher sa peluche - lestée en se précipitant sur elle. Anna n'a pas su comment se "mettre en - sécurité" ce qui à provoquer une crise que nous avons eu du mal à apaiser. -- *trop de monde* -- *les hyperstimulations sensorielles*, par exemple, bruit de moteur - inattendu, un feu clignotant, lumière trop vive, etc… - -Elle n'arrive à gérer les hyperstimulations que pendant une courte période. -Attendre à une caisse peut, pour elle, être elle un calvaire. -Si cela dure un peu trop longtemps, ou qu'une personne la touche par -inadvertance, il n'y a pas d'autre solution que de sortir du magasin, en -laissant le caddie pour retourner dans la voiture. -Je vous laisse imaginer la difficulté pour traverser un parking avec une -personne en crise que l'on ne peut pas toucher, qui ne voit et n'entend -pratiquement rien ! - -C'est pour cela que nous vous demandons la CMI Invalidité/Priorité et -Stationnement. - -** Scolarité - -La phobie scolaire de notre fille l'empêche d'avoir un enseignement dans un -établissement ordinaire. -Nous avons essayé le CNED à domicile, cela fut un échec, car son anxiété de -performance et son isolement social ont été à leurs apogées. - -Pour l'aider, depuis septembre, nous avons orienté Anna vers un -établissement privé à très petit effectif. -Cela est toujours difficile pour elle (incapacité à assister à tous les -cours à cause de son anxiété et de sa fatiguabilité), mais nous avons -constaté avec les équipes médicales et pédagogiques de réels progrès -d'autant plus qu'Anna est douée, motivée et intéressée par les études. - -Cependant cela à un coût élevé. - -* Chien d'assistance - -Pour la soutenir dans ses efforts et avec l'appui de sa psychiatre et de -son psychologue (cf certificats médicaux joins) nous avons pour projet -d'adopter un chien d'assistance qui pourrait : - -- agir sur son état anxieux et maîtriser ses crises d'angoisses ; -- être un moteur déterminant pour son autonomie future ; -- rendre son handicap visible en rendant les inconnus plus conscient - des difficultés d'Anna ; -- initier des sorties en extérieur et sociabiliser grâce à l'animal ; -- faciliter son autonomie en lui permettant d'accéder aux lieux publics. - -Anna est très motivée par ce projet, c'est pourquoi il est indispensable -qu'elle puisse bénéficier de la carte CMI ainsi que d'un taux de handicap -reconnu à au moins 50% sans lesquels un chien d'assistance ne pourrait pas -lui être attribué. - -* Conclusion - -Bien que le TSA ne sera jamais soigné, avec les bons soins et les bons -outils, elle peut arriver à vivre avec ses phobies et devenir un membre -actif, responsable et épanouie de notre société. -C'est pourquoi nous avons besoin de la reconnaissance de handicap d'au moins -80% et de la carte CMI Invalidité/Priorité pour qu'on puisse lui attribuer -un chien d'assistance qui est essentiel à la réalisation de son projet de vie. diff --git a/notes/mdph_recours.tmpcoDUQI.org b/notes/mdph_recours.tmpcoDUQI.org deleted file mode 100644 index f564eef4..00000000 --- a/notes/mdph_recours.tmpcoDUQI.org +++ /dev/null @@ -1,113 +0,0 @@ -# Created 2021-12-22 Wed 21:44 -#+title: MDPH recours -#+date: [2021-12-22 Wed] -#+author: Yann & Krystelle Esposito -#+lang: fr - -Nous demandons une réévaluation du dossier de notre fille, soit: - -- *une reconnaissance d'handicap supérieure à 80%* (avec réévaluation à la hausse de - l'AEEH complémentaire) -- la *CMI Invalidité/Priorité* indispensable à la réalisation de son projet - de vie (en accord avec les soignants) -- la *CMI Stationnement* - -* Demande reconnaissance d'au moins 80% de handicap - -Depuis avril 2021, date de la demande de création de dossier MDPH, -l'*anxiété* et l'*autonomie* de notre fille Anna se sont *dégradées*. - -Une *ALD à 100%* vient de lui être octroyée (cf attestation). -Compte tenu de la majoration de ses angoisses et en s'appuyant sur le guide -d'appui aux pratiques des maisons départementales des personnes handicapées -de la Caisse Nationale de Solidarité pour l'Autonomie (CNSA, cf document en -annexe) Anna est dans l'_incapacité absolue_ de réaliser des actes et -activités simples de la vie courante comme : - -- faire des courses seule à cause de ses hypersensibilités ; -- se diriger et agir seule en ville ; -- prendre les transports en commun ; incapacité de programmer un trajet et - surtout de répondre à un évènement inattendu comme adapter son itinéraire - en cas de dysfonctionnement. -- suivre un enseignement dans un établissement classique -- initier une sortie en extérieur - -C'est pourquoi nous vous demandons de réévaluer son taux de handicap à au -moins 80%. -Et aussi par conséquent de réévaluer l'AEEH complémentaire à la hausse. - -** Description des crises - -L'intensité des crises d'angoisses autistiques de notre fille sont -invalidantes. -Ses dernières vont jusqu'à provoquer une incapacité à se mouvoir, -hyperventilation, cécité et surdité temporaires, pertes de sensations. -Lors des crises les risques de chutes sont présents car elle n'arrive pas à -tenir la station debout. -Afin d'assurer sa sécurité il est pratiquement impossible de la laisser -seule, sauf chez elle. - -Les crises sont provoquées par : - -- *un contact, même léger* : une personne qui la frôle suffit à provoquer une - crise. Par exemple, récemment une enfant à voulu toucher sa peluche - lestée en se précipitant sur elle. Anna n'a pas su comment se "mettre en - sécurité" ce qui à provoquer une crise que nous avons eu du mal à apaiser. -- *trop de monde* -- *les hyperstimulations sensorielles*, par exemple, bruit de moteur - inattendu, un feu clignotant, lumière trop vive, etc… - -Elle n'arrive à gérer les hyperstimulations que pendant une courte période. -Attendre à une caisse peut, pour elle, être elle un calvaire. -Si cela dure un peu trop longtemps, ou qu'une personne la touche par -inadvertance, il n'y a pas d'autre solution que de sortir du magasin, en -laissant le caddie pour retourner dans la voiture. -Je vous laisse imaginer la difficulté pour traverser un parking avec une -personne en crise que l'on ne peut pas toucher, qui ne voit et n'entend -pratiquement rien ! - -C'est pour cela que nous vous demandons la CMI Invalidité/Priorité et -Stationnement. - -** Scolarité - -La phobie scolaire de notre fille l'empêche d'avoir un enseignement dans un -établissement ordinaire. -Nous avons essayé le CNED à domicile, cela fut un échec, car son anxiété de -performance et son isolement social ont été à leurs apogées. - -Pour l'aider, depuis septembre, nous avons orienté Anna vers un -établissement privé à très petit effectif. -Cela est toujours difficile pour elle (incapacité à assister à tous les -cours à cause de son anxiété et de sa fatiguabilité), mais nous avons -constaté avec les équipes médicales et pédagogiques de réels progrès -d'autant plus qu'Anna est douée, motivée et intéressée par les études. - -Cependant cela à un coût élevé. - -* Chien d'assistance - -Pour la soutenir dans ses efforts et avec l'appui de sa psychiatre et de -son psychologue (cf certificats médicaux joins) nous avons pour projet -d'adopter un chien d'assistance qui pourrait : - -- agir sur son état anxieux et maîtriser ses crises d'angoisses ; -- être un moteur déterminant pour son autonomie future ; -- rendre son handicap visible en rendant les inconnus plus conscient - des difficultés d'Anna ; -- initier des sorties en extérieur et sociabiliser grâce à l'animal ; -- faciliter son autonomie en lui permettant d'accéder aux lieux publics. - -Anna est très motivée par ce projet, c'est pourquoi il est indispensable -qu'elle puisse bénéficier de la carte CMI ainsi que d'un taux de handicap -reconnu à au moins 50% sans lesquels un chien d'assistance ne pourrait pas -lui être attribué. - -* Conclusion - -Bien que le TSA ne sera jamais soigné, avec les bons soins et les bons -outils, elle peut arriver à vivre avec ses phobies et devenir un membre -actif, responsable et épanouie de notre société. -C'est pourquoi nous avons besoin de la reconnaissance de handicap d'au moins -80% et de la carte CMI Invalidité/Priorité pour qu'on puisse lui attribuer -un chien d'assistance qui est essentiel à la réalisation de son projet de vie. diff --git a/notes/mdph_recours.tmpkI0rDy.org b/notes/mdph_recours.tmpkI0rDy.org deleted file mode 100644 index 7768672a..00000000 --- a/notes/mdph_recours.tmpkI0rDy.org +++ /dev/null @@ -1,116 +0,0 @@ -# Created 2021-12-22 Wed 21:23 -#+title: MDPH recours -#+date: [2021-12-22 Wed] -#+author: Yann Esposito -#+lang: fr - -- tags :: - -- source :: - -Nous demandons une réévaluation du dossier de notre fille, soit: - -- *une reconnaissance d'handicap supérieure à 80%* (avec réévaluation à la hausse de - l'AEEH complémentaire) -- la *CMI Invalidité/Priorité* indispensable à la réalisation de son projet - de vie (en accord avec les soignants) -- la *CMI Stationnement* - -* Reconnaissance d'au moins 80% de handicap - -Depuis avril 2021, date de la demande de création de dossier MDPH, -l'*anxiété* et l'*autonomie* de notre fille Anna se sont *dégradées*. - -Une *ALD à 100%* vient de lui être octroyée (cf attestation). -Compte tenu de la majoration de ses angoisses et en s'appuyant sur le guide -d'appui aux pratiques des maisons départementales des personnes handicapées -de la Caisse Nationale de Solidarité pour l'Autonomie (CNSA, cf document en -annexe) Anna est dans l'_incapacité absolue_ de réaliser des actes et -activités simples de la vie courante comme : - -- faire des courses seule à cause de ses hypersensibilités ; -- se diriger et agir seule en ville ; -- prendre les transports en commun ; incapacité de programmer un trajet et - surtout de répondre à un évènement inattendu comme adapter son itinéraire - en cas de dysfonctionnement. -- suivre un enseignement dans un établissement classique -- initier une sortie en extérieur - -C'est pourquoi nous vous demander de réévaluer son taux de handicap à au -moins 80%. - -** Description des crises - -L'intensité des crises d'angoisses autistiques de notre fille sont -invalidantes. -Ses dernières vont jusqu'à provoquer une incapacité à se mouvoir, -hyperventilation, cécité et surdité temporaire, pertes de sensations. -Les risques de chutes sont présents car elle n'arrive pas à tenir la -station debout. -Afin d'assurer sa sécurité il est pratiquement impossible de la laisser -seule, sauf chez elle. - -Les crises sont provoqués par : - -- *un contact, même léger* ,(une personne qui la frôle suffit à provoquer une - crise). Par exemple, récemment une enfant à voulu toucher sa peluche - lestée en se précipitant sur elle. Anna n'a pas su comment se "mettre en - sécurité" ce qui à provoquer une crise que nous avons eu du mal à apaiser. -- *trop de monde* -- *les hyperstimulations sensorielles*, par exemple, bruit de moteur - inattendu, un feu clignotant, lumière trop vive, etc… - -Elle ne peut arriver à gérer les hyperstimulations que pendant une courte -période. -Attendre à une caisse peut être pour elle un calvaire. -Si cela dure trop longtemps il n'y a pas d'autre solution que de sortir du -magasin, en laissant le caddie pour retourner dans la voiture. -Je vous laisse imaginer la difficulté pour traverser un parking avec une -personne en crise que l'on ne peut pas toucher, qui ne voit et n'entend -pratiquement rien ! - -C'est pour cela que nous vous demandons la CMI Invalidité/Priorité et Stationnement. - -** Scolarité - -La phobie scolaire de notre fille l'empêche d'avoir un enseignement dans un -établissement ordinaire. -Nous avons essayé le CNED à domicile, cela fut un échec, car son anxiété de -performance et son isolement social ont été à leur apogées. - -Pour l'aider, depuis septembre, nous avons orienté Anna dans un -établissement privé à très petit effectif. -Cela est toujours difficile pour elle (incapacité à assister à tous les -cours à cause de son anxiété et de sa fatiguabilité), mais nous avons -constaté avec les équipes médicales et pédagogiques de réels progrès -d'autant plus qu'Anna est douée, motivée et intéressée par les études. - -* Chien d'assistance - -Pour la soutenir dans ses efforts et avec l'appui de sa psychiatre et de -son psychologue (cf certificats médicaux joins), un chien d'assistance -pourrait agir sur son état anxieux, être un moteur déterminant pour son -autonomie future et rendre son handicap visible. - -En accord avec sa psychiatre et son psychologue nous avons pour projet -d'aider Anna à s'intégrer socialement et à gagner en autonomie par le biais -d'un chien d'assistance. -Il lui permettra de: - -- agir sur son état anxieux et maîtriser ses crises d'angoisses -- rendre son handicap visible et donc les inconnus seraient plus conscient - et prévenants avec notre fille -- un moteur déterminant pour son autonomie future. -- initier des sorties en extérieur et sociabiliser grâce à l'animal - -C'est pourquoi il est indispensable qu'elle puisse bénéficier de la carte -CMI ainsi que d'un taux de handicap reconnu à au moins 50%. - -* Conclusion - -Bien que le TSA ne sera jamais soigné, avec les bons soins et les bons -outils, elle peut arriver à vivre avec ses phobies et devenir un membre -actif, responsable et épanouie de notre société. -C'est pourquoi nous avons besoin de la reconnaissance de handicap d'au moins -80% et de la carte CMI Invalidité/Priorité pour qu'on puisse lui attribuer -un chien d'assistance. diff --git a/roam/org-roam.db b/roam/org-roam.db index 31d35aad9e4f03bd89eaf7ac361baf2cf4c4e744..474b354e45803e17b161dfd9b7d95f602312e3df 100644 GIT binary patch delta 66661 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

4)Ci#UjYYY+|i4trL9ZWvRpHv9IK+E}XYR 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 diff --git a/tracker.tmp8YFKFI.org b/tracker.tmp8YFKFI.org deleted file mode 100644 index e515e31a..00000000 --- a/tracker.tmp8YFKFI.org +++ /dev/null @@ -1,108 +0,0 @@ -# Created 2021-12-21 Tue 12:03 -#+title: -#+author: Yann Esposito -* CHAT Dar about using UI Components in the login pages :work:chat: -[2021-12-21 Tue 10:20] - -#+begin_quote -@Dar -Hey Yann, a question came up in our weekly sync about the login flows… -now that they're getting a bit more sophisticated wouldn't it be better to -start using common UI components rather than taking snapshots/hard-copies -of styles and generating one-off templates? -what are the security concerns around client-side rendering the auth UI? -#+end_quote - - -Hi Dar, - -So to answer the question historically. -First, we didn't have any login page. -It was 100% hosted in CTR UI. -I just provided the route to create the login links (and this could still -be used today and it is in the new login page). - -We faced many bugs (most of them related to URL encoding), and thus decided -to close the gap by building an hosted login page. -That way I can 100% control the behavior and have lot of tests to check url -encoding related bugs. -Do not forget that in CTR you often want to deal with URL with very complex -URL fragments that contain a representation of the investigation, imagine -text with carriage return, URL, emails, etc… - -Even recently we experienced subtle bugs. And the solution was to get rid -as much as possible of the javascript code that handled the url parsing and building. -Now, this is handled via the backend on the login page. - -So the 1st reason to host the login page was convenience and bug fixing and -not necessarily security. - -Regarding security, I was afraid to introduce a security bug because, the -login page is clearly a nice entry point for security attack. -So I tried to be as conservative as possible. -So no js when possible. -And if we need to use js, do not use any lib, just basic javascript so the -code is easy to understand and debug. - -There is another complexity to keep in mind. -For historical reason, for now, there is no "session" when the user has -logged in via the IdP but hasn't yet selected a user and thus is not logged -in SecureX. -Right now, we handle this state with a token in the URLs. -And this token can be consumed only once. -By that I mean, in the account selection page you will have links looking like: - -- https://..../select-org-1?code=XXX -- https://..../select-org-2?code=XXX -- https://..../select-org-3?code=XXX - -When the user will click on the first link; the code =XXX= -will be consumed and the other links will not work. -So I ensure that the user need to perform a login workflow again to login -into another org. - -So that being, said. -I think now we are in a new situation where I think we could totally have a -lot more convenient system. - -1. I need to create a notion of session when the user is logged in in the - IdP but has not selected a SecureX account. -2. Use more js to ease the UI work, typically, UI components. The limit - being that the CSP header are restrictive in the sense that we must host - the JS at the same URL, and we should probably still generate data via - the backend, maybe still keep a bit of HTML. - -In fact, we need the backend to be able to provide a set of informations to -the UI and take care that no XSS could be possible. -I think the main risk is that, the login page must support complex query -parameters. -So great care should be taken in the parsing of these query parameters. -To give a concrete example: - -You should be able to generate a page for a URL looking like: - -https://securex...cisco.com/login?redirects= - -Where URL2 should be encoded correctly, and could itself be complex: - -URL2: https://visibility...cisco.com/investigate#q= - -Where QUERY should be encoded an could contain urls, emails: - -QUERY: - -#+begin_src -url:http://attack.com/foo?param=something-complex -foo@example.com -some random text -carriage return, unicode, emojis? etc… -#+end_src - -So to present the login page, every button should take care that adding a -=