{"id":2849,"date":"2016-12-08T14:55:13","date_gmt":"2016-12-08T12:55:13","guid":{"rendered":"http:\/\/blog.nebule.org\/?p=2849"},"modified":"2016-12-10T12:21:35","modified_gmt":"2016-12-10T10:21:35","slug":"entites-de-recouvrement-implementation","status":"publish","type":"post","link":"http:\/\/blog.nebule.org\/?p=2849","title":{"rendered":"Entit\u00e9s de recouvrement &#8211; impl\u00e9mentation"},"content":{"rendered":"<p style=\"text-align: justify;\">Dans le pr\u00e9c\u00e9dent article sur les <a title=\"Entit\u00e9s de recouvrement\" href=\"http:\/\/blog.nebule.org\/?p=2092\">Entit\u00e9s de recouvrement<\/a> qui date de plus de 6 mois, il \u00e9tait question de l&rsquo;impl\u00e9mentation du m\u00e9canisme dans le code. Jusque l\u00e0 la liste des entit\u00e9s de recouvrement \u00e9tait renvoy\u00e9e vide.<br \/>\nCe m\u00e9canisme peut \u00eatre une contrainte l\u00e9gale dans certains pays mais ce peut \u00eatre aussi un moyen d&rsquo;assurer plus sereinement la disponibilit\u00e9 des donn\u00e9es sans remettre en question significativement la confidentialit\u00e9 de celles-ci. Sa port\u00e9e est strictement local et ne doit pas devenir un comportement global sous peine de rompre la confiance dans l&rsquo;ensemble du code de <a title=\"Projet nebule\" href=\"http:\/\/www.nebule.org\" target=\"_blank\">nebule<\/a>.<\/p>\n<p style=\"text-align: justify;\">La prochaine version de la biblioth\u00e8que nebule en <a title=\"php\" href=\"http:\/\/php.net\" target=\"_blank\">PHP<\/a> int\u00e8gre le code n\u00e9cessaire \u00e0 la d\u00e9tection des entit\u00e9s marqu\u00e9es localement comme entit\u00e9s de recouvrement et le code qui se charge de dupliquer la protection des objets pour ces entit\u00e9s.<\/p>\n<p style=\"text-align: justify;\">La d\u00e9finition des entit\u00e9s de recouvrement est purement locale et est attach\u00e9e \u00e0 l&rsquo;entit\u00e9 instance locale. La d\u00e9tection d&rsquo;entit\u00e9 de recouvrement se fait sur un lien de type <code>f<\/code> entre chaque entit\u00e9 d\u00e9finie comme entit\u00e9 de recouvrement et l&rsquo;entit\u00e9 instance locale. Le champ m\u00e9ta du lien est l&rsquo;objet de r\u00e9f\u00e9rence contenant <code>nebule\/objet\/entite\/recouvrement<\/code>. Seuls les liens des autorit\u00e9s strictement locales sont pris en compte, c&rsquo;est \u00e0 dire \u00e0 l&rsquo;exception du <a title=\"puppetmaster\" href=\"http:\/\/puppetmaster.nebule.org\" target=\"_blank\">puppetmaster<\/a>, du <a title=\"cerberus\" href=\"http:\/\/cerberus.nebule.org\/\" target=\"_blank\">ma\u00eetre de la s\u00e9curit\u00e9<\/a> et du <a title=\"bachue\" href=\"http:\/\/bachue.nebule.org\" target=\"_blank\">ma\u00eetre du code<\/a>.<\/p>\n<p style=\"text-align: justify;\">La duplication de la protection se fait au niveau de la fonction (unique) de protection d&rsquo;un objet <code>setProtected()<\/code>. Afin d&rsquo;\u00e9viter la suppression du partage de protection avec une entit\u00e9 de recouvrement, la fonction <code>cancelShareProtectionTo()<\/code> ne supprime pas ce partage si l&rsquo;entit\u00e9 est dans la liste des entit\u00e9s de recouvrement.<br \/>\nAfin de ne pas perturber l&rsquo;utilisateur, les applications affichent tous les partages de protection mais n&rsquo;affichent pas le bouton correspondant pour ces entit\u00e9s de recouvrement.<\/p>\n<p style=\"text-align: justify;\">Les applications <a title=\"option\" href=\"http:\/\/blog.nebule.org\/?page_id=2465\" target=\"_blank\">option<\/a>, <a title=\"sylabe\" href=\"http:\/\/www.sylabe.org\" target=\"_blank\">sylabe<\/a> et <a title=\"klicty\" href=\"http:\/\/www.klicty.org\" target=\"_blank\">klicty<\/a> permettaient d\u00e9j\u00e0 l&rsquo;affichage des entit\u00e9s de recouvrement m\u00eame si elle \u00e9tait vide. Ces affichages ont \u00e9t\u00e9 am\u00e9lior\u00e9s afin d&rsquo;afficher en plus l&rsquo;entit\u00e9 autorit\u00e9 locale qui a activ\u00e9 l&rsquo;entit\u00e9 comme entit\u00e9 de recouvrement. Le but est d&rsquo;avoir un m\u00e9canisme qui peut \u00eatre contraignant et indiscret mais dont le fonctionnement doit \u00eatre ouvert et loyal pour maintenir la confiance de l&rsquo;utilisateur.<br \/>\nL&rsquo;application option est maintenant le centre de gestion des entit\u00e9s de recouvrement. Il est possible, lorsque l&rsquo;on d\u00e9verrouille l&rsquo;entit\u00e9 instance de serveur, d&rsquo;ajouter ou de retirer des entit\u00e9s \u00e0 la liste. Les autres entit\u00e9s ne peuvent faire que de l&rsquo;affichage. Si un lien est g\u00e9n\u00e9r\u00e9 par une autre entit\u00e9, il est ignor\u00e9.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Dans le pr\u00e9c\u00e9dent article sur les Entit\u00e9s de recouvrement qui date de plus de 6 mois, il \u00e9tait question de l&rsquo;impl\u00e9mentation du m\u00e9canisme dans le code. Jusque l\u00e0 la liste des entit\u00e9s de recouvrement \u00e9tait renvoy\u00e9e vide. Ce m\u00e9canisme peut \u00eatre une contrainte l\u00e9gale dans certains pays mais ce peut \u00eatre aussi un moyen d&rsquo;assurer &hellip; <a href=\"http:\/\/blog.nebule.org\/?p=2849\" class=\"more-link\">Continuer la lecture de <span class=\"screen-reader-text\">Entit\u00e9s de recouvrement &#8211; impl\u00e9mentation<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[55,363,70,72,73,78,81,5,7,98,13,122,99,110,18,20,21,26,373,24,30],"tags":[],"_links":{"self":[{"href":"http:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/posts\/2849"}],"collection":[{"href":"http:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/blog.nebule.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2849"}],"version-history":[{"count":3,"href":"http:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/posts\/2849\/revisions"}],"predecessor-version":[{"id":2853,"href":"http:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/posts\/2849\/revisions\/2853"}],"wp:attachment":[{"href":"http:\/\/blog.nebule.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2849"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blog.nebule.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2849"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blog.nebule.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2849"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}