<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>RBAC - RiskInsight</title>
	<atom:link href="https://www.riskinsight-wavestone.com/tag/rbac/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.riskinsight-wavestone.com/tag/rbac/</link>
	<description>Le blog cybersécurité des consultants Wavestone</description>
	<lastBuildDate>Fri, 20 Dec 2024 10:06:49 +0000</lastBuildDate>
	<language>fr-FR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://www.riskinsight-wavestone.com/wp-content/uploads/2024/02/Blogs-2024_RI-39x39.png</url>
	<title>RBAC - RiskInsight</title>
	<link>https://www.riskinsight-wavestone.com/tag/rbac/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Gestion des accès : comment l’autorisation évolue pour répondre aux défis et besoins des organisations ?</title>
		<link>https://www.riskinsight-wavestone.com/2024/12/gestion-des-acces-comment-lautorisation-evolue-pour-repondre-aux-defis-et-besoins-des-organisations/</link>
					<comments>https://www.riskinsight-wavestone.com/2024/12/gestion-des-acces-comment-lautorisation-evolue-pour-repondre-aux-defis-et-besoins-des-organisations/#respond</comments>
		
		<dc:creator><![CDATA[Sélina BOULIC]]></dc:creator>
		<pubDate>Thu, 19 Dec 2024 12:32:36 +0000</pubDate>
				<category><![CDATA[Digital Identity]]></category>
		<category><![CDATA[Eclairage]]></category>
		<category><![CDATA[ABAC]]></category>
		<category><![CDATA[admin-time]]></category>
		<category><![CDATA[autorisations]]></category>
		<category><![CDATA[event-time]]></category>
		<category><![CDATA[GBAC]]></category>
		<category><![CDATA[IAM]]></category>
		<category><![CDATA[modèle d'accès]]></category>
		<category><![CDATA[modèles d'autorisation]]></category>
		<category><![CDATA[RBAC]]></category>
		<category><![CDATA[run-time]]></category>
		<guid isPermaLink="false">https://www.riskinsight-wavestone.com/?p=24898</guid>

					<description><![CDATA[<p>La gestion des droits d’accès aux ressources d’une entreprise est une question centrale de l’IAM. Un modèle d’habilitation apporte une couche d’abstraction qui guide l’attribution des permissions techniques aux utilisateurs et en facilite le suivi dans la durée. A cette fin,...</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/2024/12/gestion-des-acces-comment-lautorisation-evolue-pour-repondre-aux-defis-et-besoins-des-organisations/">Gestion des accès : comment l’autorisation évolue pour répondre aux défis et besoins des organisations ?</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com">RiskInsight</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p style="text-align: justify;">La gestion des droits d’accès aux ressources d’une entreprise est une question centrale de l’IAM. Un modèle d’habilitation apporte une couche d’abstraction qui guide l’attribution des permissions techniques aux utilisateurs et en facilite le suivi dans la durée.</p>
<p style="text-align: justify;">A cette fin, les modèles de droits existants sont nombreux : MAC, DAC, GBAC, ABAC…</p>
<p style="text-align: justify;">Comment comprendre concrètement ces multiples déclinaisons de modèles de droits et les appliquer à son entreprise ?</p>
<p style="text-align: justify;">Les modèles diffèrent dans leur degré de complexité et dans la réponse qu’ils apportent à des besoins et contraintes spécifiques d’une organisation ou d’un système. Les plus récents intègrent des problématiques de sécurité, de scalabilité et de conformité dans un environnement technologique toujours plus complexe.</p>
<p style="text-align: justify;">Dans cet article, nous suivrons une logique chronologique en identifiant comment l’autorisation a évolué au cours des décennies pour répondre aux défis des organisations. Nous verrons, que, comme les systèmes d’information, les approches de modèles de droits se sont complexifiées, et intègrent aujourd’hui de plus en plus de paramètres pour décider d’accorder ou de refuser un accès.</p>
<p style="text-align: justify;">On peut ainsi regrouper les modèles selon 3 approches reflétant leur sophistication progressive :</p>
<ul style="text-align: justify;">
<li>Approche classique : l’admin-time</li>
<li>Approche moderne : run-time</li>
<li>Approches prospectives : event-time</li>
</ul>
<p style="text-align: justify;">Nous illustrerons chacune de ces approches par des modèles emblématiques en mettant en évidence :</p>
<ul style="text-align: justify;">
<li>la réponse apportée à un besoin initial</li>
<li>les limitations du modèle.</li>
</ul>
<p style="text-align: justify;">Et conclurons notre propos par une synthèse chronologique des approches et de leurs modèles.</p>
<p style="text-align: justify;"> </p>
<h2 style="text-align: justify;">Approches classiques d’autorisation : Admin-time</h2>
<p> </p>
<p style="text-align: justify;"><span style="font-weight: normal !msorm;"><strong>Dans les années 60-70</strong></span>, le développement des systèmes informatiques, marqué par la mise au point des premiers systèmes multi-utilisateurs (Multics, HP-3000), fait naître la nécessité de repenser les droits des utilisateurs.</p>
<p style="text-align: justify;">Des principes de sécurité innovants, encore utilisés aujourd’hui, sont ainsi définis sur ces systèmes, à l’instar des anneaux de protection (<em>rings</em> en anglais), qui d’une part, visent à protéger l’intégrité du système d’exploitation contre les modifications volontaires et accidentelles, et d’autre part, initient la réflexion sur les politiques d’accès aux ressources par les utilisateurs.</p>
<p style="text-align: justify;">Dans les premiers modèles de droits d’accès qui émergent, la gestion des droits reste sommaire, <span style="font-weight: normal !msorm;"><strong>définie en dur par des « administrateurs »</strong></span> : <span style="font-weight: normal !msorm;"><strong>c’est l’admin-time</strong></span>, dont on retient en particulier les modèles DAC et MAC (années 60-70) et RBAC (années 90).</p>
<p style="text-align: justify;"> </p>
<h3 style="text-align: justify;">Discretionary Access Control (DAC) et Access Control Lists (ACLs)</h3>
<p style="text-align: justify;">Comme son nom le suggère, le modèle DAC – pour <span style="font-weight: normal !msorm;"><strong>« contrôle d’accès discrétionnaire »</strong></span> – laisse à chaque propriétaire de ressource le soin d’attribuer les permissions aux utilisateurs. Il est le modèle de droits de base que l’on <span style="font-weight: normal !msorm;"><strong>trouve sur les systèmes Unix</strong></span>, qui peut être complété par le mécanisme d’ACL, des <strong>« listes pour le contrôle d’accès »</strong>. Souvent associées à DAC, les ACLs spécifient, pour une ressource donnée, les utilisateurs et leurs droits sur la ressource, comme illustré ci-dessous sur l’exemple d’Unix.</p>
<figure id="attachment_24951" aria-describedby="caption-attachment-24951" style="width: 1373px" class="wp-caption aligncenter"><img fetchpriority="high" decoding="async" class="wp-image-24951 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image1-FR-1.png" alt="Représentation des droits sous un système Unix,  avec ou sans ACL attaché au fichier « projectRI »." width="1373" height="939" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image1-FR-1.png 1373w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image1-FR-1-279x191.png 279w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image1-FR-1-57x39.png 57w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image1-FR-1-768x525.png 768w" sizes="(max-width: 1373px) 100vw, 1373px" /><figcaption id="caption-attachment-24951" class="wp-caption-text"><em>Représentation des droits sous un système Unix, avec ou sans ACL attaché au fichier « projectRI ». A noter, l’<strong>ACL minimale</strong> décrit les droits positionnés pour le <strong>triplet de base de droits Unix</strong> (propriétaire – groupe propriétaire – autres utilisateurs), mais elle peut être modifiée pour donner des <strong>droits à des utilisateurs ou à des groupes supplémentaires</strong>, comme ici des droits spécifiques pour l’utilisateur « alice ». Cela étend et permet une gestion plus fine des droits.</em></figcaption></figure>
<p style="text-align: justify;">Au-delà d’Unix, les systèmes de partage de fichiers tels que <span style="font-weight: normal !msorm;"><strong>OneDrive</strong></span> ou encore les <span style="font-weight: normal !msorm;"><strong>réseaux sociaux</strong></span>, où l’utilisateur peut choisir qui peut voir ou commenter chaque publication, sont d’autres exemples d’utilisation de <span style="font-weight: normal !msorm;"><strong>DAC</strong></span><strong> et des ACLs<span style="font-weight: normal !msorm;">.</span></strong></p>
<p style="text-align: justify;">En effet, la flexibilité et la granularité de ce modèle constituent un avantage pour des implémentations locales et centrées sur les individus. En revanche, elles <span style="font-weight: normal !msorm;"><strong>deviennent problématiques pour assurer un niveau correct de protection des ressources à large échelle sur des systèmes plus complexes.</strong></span></p>
<p style="text-align: justify;"> </p>
<h3 style="text-align: justify;">Mandatory Access Control (MAC)</h3>
<p style="text-align: justify;">Le modèle MAC, pour <strong>« contrôle d’accès obligatoire »</strong>, prend le contrepied de DAC. Plutôt que de laisser l’assignation des droits à la « discrétion » des utilisateurs, ressource par ressource, limitant la visibilité à l’échelle du système et favorisant de fait erreurs et failles, <strong>des règles sont prédéfinies par des administrateurs selon différentes classifications de sécurité et appliquées de façon stricte par </strong><span style="font-weight: normal !msorm;"><strong>une autorité centrale</strong></span>, généralement représentée par le système d’exploitation lui-même.</p>
<p style="text-align: justify;">Il prévaut en particulier dans les <span style="font-weight: normal !msorm;"><strong>milieux gouvernementaux, militaires ou industriels</strong></span>, car il permet un <span style="font-weight: normal !msorm;"><strong>contrôle étroit de l’accès aux données sensibles</strong></span>. Il utilise ainsi des <span style="font-weight: normal !msorm;"><strong>labels</strong></span> qui caractérisent la sensibilité des objets et des utilisateurs, selon les règles de l’organisation concernée :</p>
<ul style="text-align: justify;">
<li>Un niveau de <span style="font-weight: normal !msorm;"><strong>classification des ressources,</strong></span> par exemple : « Non classifié », « Restreint », « Confidentiel », « pointe de diamant »<a href="https://fr.wikipedia.org/wiki/Habilitation_de_s%C3%A9curit%C3%A9_en_France" name="_ftnref1">[1]</a>, …</li>
<li>Un <span style="font-weight: normal !msorm;"><strong>niveau d’habilitation</strong></span> des <span style="font-weight: normal !msorm;"><strong>utilisateurs</strong></span>, liés aux niveaux de classification des ressources existants.</li>
</ul>
<p style="text-align: justify;">Nous détaillons ci-dessous Multics et SELinux, qui sont deux exemples fondamentaux d’implémentation de MAC.</p>
<h4 style="text-align: justify;">Exemple MAC 1 : Multics et les anneaux de protection</h4>
<figure id="attachment_24901" aria-describedby="caption-attachment-24901" style="width: 317px" class="wp-caption aligncenter"><img decoding="async" class=" wp-image-24901" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image2-FR.jpg" alt="Logo des systèmes Multics (Source). Il met en avant de façon stylisée les anneaux de protection qui sont au cœur de Multics" width="317" height="317" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image2-FR.jpg 251w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image2-FR-191x191.jpg 191w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image2-FR-39x39.jpg 39w" sizes="(max-width: 317px) 100vw, 317px" /><figcaption id="caption-attachment-24901" class="wp-caption-text"><em>Logo des systèmes Multics (<a href="https://commons.wikimedia.org/wiki/File:Multics-logo.svg">Source</a>). Il met en avant de façon stylisée les anneaux de protection qui sont au cœur de Multics.</em></figcaption></figure>
<p style="text-align: justify;">Déjà évoqué précédemment comme un précurseur des <strong>systèmes multi-utilisateurs</strong> (également dits « à temps partagé »), <strong>le projet <span style="font-weight: normal !msorm;">Multics</span></strong>, sorti en 1969, a été porteur de<strong> multiples fonctionnalités innovantes</strong>, notamment dans sa gestion de la mémoire ou de la sécurité<strong>. </strong>Il préfigure ainsi MAC avant même la formulation de modèles tels que <strong>Bell-LaPadula (1973)</strong> et sa première définition formelle énoncée dans le <strong>« Orange Book » (1983)</strong> du <em>Department of Defense</em>, qui établit les normes de sécurité informatiques américaines.</p>
<p style="text-align: justify;">Il repose sur le concept <strong>d’anneaux de protection</strong> (<em>rings</em>), que Multics a créé, en témoigne son logo (image ci-dessus), et qui constituent le fondement des systèmes MLS – Multi-Level Security –, très utilisés dans les contextes de haute confidentialité. Il s’agit d’un <strong>ensemble d’anneaux concentriques représentant des niveaux de sensibilité d’autant plus élevés que l’on se rapproche du centre</strong> (<em>ring 0</em>) – et donc de privilèges requis pour y accéder. <strong>Des mécanismes dits <em>guards</em> ou <em>gatekeepers</em>, situés à l’interface entre deux anneaux, contrôlent étroitement la légitimité des accès dans les deux sens</strong>, qu’ils accordent ou réfutent.</p>
<p style="text-align: justify;">En réalité, ces anneaux sont de <strong>deux types</strong> :</p>
<ul style="text-align: justify;">
<li>Les <strong>anneaux de protection du kernel</strong> sont des anneaux physiques intégrés aux processeurs et exploités par le système d’exploitation pour garantir son intégrité contre les fautes (à l’origine de plantages de la machine) ou des modifications, intentionnelles ou non.</li>
<li>Les <strong>anneaux de l’espace utilisateur</strong> sont des anneaux logiques mis en œuvre par le système d’exploitation. C’est là que l’on retrouve MAC. Par le biais de labels, chaque utilisateur et chaque ressource se retrouve rattaché à un niveau d’anneau. De là, des règles définissent les actions possibles ou non, à l’instar du modèle Bell-LaPadula qui met l’accent sur la confidentialité des données : <em>« No read up » </em>(un utilisateur ne peut accéder en lecture à des couches supérieures à la sienne), <em>« No write down »</em> (il ne peut non écrire dans des couches inférieures, évitant les fuites).</li>
</ul>
<p style="text-align: justify;">L’image ci-dessous résume le principe des anneaux de protection.</p>
<figure id="attachment_24955" aria-describedby="caption-attachment-24955" style="width: 1428px" class="wp-caption aligncenter"><img decoding="async" class="wp-image-24955 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image3-FR-1.png" alt="Les 2 types d’ anneaux de protection. A gauche, l’implémentation matérielle utilisée pour protéger le système. A droite, une transposition pour le contexte utilisateurs, avec des niveaux de classification allant de « non classifié » à « très secret », qui sont gérés par le système d’exploitation." width="1428" height="740" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image3-FR-1.png 1428w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image3-FR-1-369x191.png 369w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image3-FR-1-71x37.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image3-FR-1-768x398.png 768w" sizes="(max-width: 1428px) 100vw, 1428px" /><figcaption id="caption-attachment-24955" class="wp-caption-text"><em>Les 2 types d’ anneaux de protection. A gauche, l’implémentation matérielle utilisée pour protéger le système. A droite, une transposition pour le contexte utilisateurs, avec des niveaux de classification allant de « non classifié » à « très secret », qui sont gérés par le système d’exploitation.</em></figcaption></figure>
<h4 style="text-align: justify;">Exemple MAC 2 : SELinux, module de sécurité du noyau Linux</h4>
<figure id="attachment_24905" aria-describedby="caption-attachment-24905" style="width: 251px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class=" wp-image-24905" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image4.-FR.png" alt="Logo de SELinux. Il représente la mascotte des systèmes Unix (Tux) armée d’un bouclier, soulignant sa fonction de protection du système." width="251" height="229" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image4.-FR.png 203w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image4.-FR-43x39.png 43w" sizes="auto, (max-width: 251px) 100vw, 251px" /><figcaption id="caption-attachment-24905" class="wp-caption-text"><em>Logo de SELinux (<a href="https://en.m.wikipedia.org/wiki/File:SELinux_logo.svg">Source</a>). Il représente la mascotte des systèmes Unix (Tux) armée d’un bouclier, soulignant sa fonction de protection du système.</em></figcaption></figure>
<p style="text-align: justify;">Initialement <strong>développé par la NSA</strong>, en 2001, <strong>SELinux</strong> a été proposé et ajouté dès 2003 aux <strong>modules de sécurité pour le noyau Linux</strong> (LSM, Linux Security Modules), et est nativement intégré aux distibutions RedHat, telles que Fedora.</p>
<p style="text-align: justify;">C’est un autre <strong>exemple notoire d’implémentation de MAC</strong> : il permet aux administrateurs d’<strong>attribuer à chaque ressource un <em>label security context</em> afin de les classifier</strong>, et de <strong>définir les politiques de sécurité qui seront appliquées par le système d’exploitation</strong>. Même avec des droits privilégiés, une application verra ses droits cantonnés au domaine qui lui est nécessaire pour fonctionner (par exemple les dossiers qui ont été lui spécifiés), <strong>SELinux détectant et empêchant toute action non conforme</strong>.</p>
<p style="text-align: justify;">SELinux apporte donc une <strong>couche de protection supplémentaire dans le cas où un utilisateur ou un processus parvient à contourner les contrôles d’accès traditionnels</strong>.</p>
<p style="text-align: justify;">Dans la pratique, les politiques <span style="font-weight: normal !msorm;"><strong>MAC </strong></span><strong>se suffisent rarement à elles-mêmes mais viennent se superposer aux règles<span style="font-weight: normal !msorm;"> DAC</span></strong> existantes, dont elles pallient la flexibilité. Deux modèles avant tout fondés sur l’identité de l’utilisateur ou du processus, à partir de laquelle ils autorisent ou refusent des accès : on parle de <strong>contrôle d’accès basé sur l’identité</strong> ou IBAC (Identity-Based Access Control). <strong>Ces modèles restent limités à des contextes locaux qui résistent peu au passage à l’échelle.</strong></p>
<p style="text-align: justify;"> </p>
<h3 style="text-align: justify;">Role-based Access Control (RBAC)</h3>
<p style="text-align: justify;">Formulé en 1992 par David FERRAIOLO et Richard KUHN, deux ingénieurs du NIST américain, le modèle RBAC – <strong>modèle d’accès</strong> <span style="font-weight: normal !msorm;"><strong>basé sur les rôles</strong></span> – a été pensé pour simplifier la gestion des permissions à l’échelle d’une organisation tout en en reflétant au mieux la structure (hiérarchie, responsabilités, départements…).</p>
<p style="text-align: justify;">Au lieu d’octroyer les droits directement à une identité comme avec IBAC, une méthode vite <span style="font-weight: normal !msorm;"><strong>difficile à maintenir</strong></span>, on conçoit des <span style="font-weight: normal !msorm;"><strong>rôles </strong></span><strong>métier <span style="font-weight: normal !msorm;">et les privilèges associés</span></strong>. <strong>L’utilisateur hérite alors des droits rattachés à son rôle au sein de l’entreprise</strong>, ce qui lui permet d’accéder aux différents applicatifs et systèmes de partage d’entreprise considérés comme nécessaires pour ses activités internes.</p>
<figure id="attachment_24959" aria-describedby="caption-attachment-24959" style="width: 1311px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="wp-image-24959 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image5-FR-1.png" alt="Principe de fonctionnement du modèle RBAC" width="1311" height="781" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image5-FR-1.png 1311w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image5-FR-1-321x191.png 321w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image5-FR-1-65x39.png 65w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image5-FR-1-120x70.png 120w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image5-FR-1-768x458.png 768w" sizes="auto, (max-width: 1311px) 100vw, 1311px" /><figcaption id="caption-attachment-24959" class="wp-caption-text"><em>Principe de fonctionnement du modèle RBAC</em></figcaption></figure>
<p style="text-align: justify;">Ce premier cadre conceptuel a été complété <strong>et standardisé en 2004 avec la norme ANSI INCITS 359-2004</strong>, qui tient compte de cas pratiques et scénarios d’entreprise. Par exemple, il aborde les besoins en séparation des responsabilités (SoD, Segregation of Duty), fondamentale dans les institutions financières et bancaires, mais aussi le principe de moindre privilège, ou encore l’héritage des permissions.</p>
<h4 style="text-align: justify;">Une adoption progressive et toujours plus centralisée de RBAC</h4>
<p style="text-align: justify;">Dès les années 80-90, largement adoptées par des grandes entreprises et susceptibles de contenir des informations sensibles dont on a naturellement voulu contrôler l’accès, <strong>les bases de données ont été pionnières dans la mise en œuvre du modèle RBAC</strong>. Elles illustrent son implémentation au niveau d’applications isolées, non répercutée sur les applications ou systèmes externes.</p>
<p style="text-align: justify;">Les années 2000 voient le lancement de <strong>l’Active Directory de Microsoft</strong>, à partir du Windows 2000 Server. Cet annuaire centralisé vise la <strong>gestion de l’ensemble des ressources de l’organisation</strong> (personnes, ressources physiques, applicatifs). Bien que ce ne soit pas à proprement parler un outil RBAC, un rapprochement peut être fait. L’attribution de droits d’accès se base en effet sur des <strong>groupes de sécurité</strong> – qui peuvent être perçus comme des rôles – avec des <strong>mécanismes d’héritage de permissions</strong> et des concepts de domaines, arbres et forêts visant à <strong>représenter les structures logiques d’entreprise</strong>.</p>
<p style="text-align: justify;">Depuis, <strong>les solutions IAM modernes</strong>, comme Okta, SailPoint IIQ ou Microsoft AzureAD, supportent RBAC pour des<strong> environnements hétérogènes</strong>, notamment les services cloud. Elles illustrent <strong>la centralisation progressive de la gestion des droits d’accès</strong>, d’abord gérée localement dans les applications, et aujourd’hui de plus en plus déléguée à des solutions IAM couvrant un spectre maximal.</p>
<p style="text-align: justify;">RBAC attribue des droits en fonction d’un rôle métier tandis qu’IBAC est lié à une identité. <strong>La couche d’abstraction créée entre l’identité du sujet et son rôle permet de s’extraire de contextes restreints</strong> (systèmes de fichiers pour DAC, systèmes d’exploitation pour MAC) <strong>et de s’adapter (enfin !) aux besoins de contrôle d’accès d’organisations</strong>. Tous partagent néanmoins comme caractéristique <span style="font-weight: normal !msorm;"><strong>une définition rigide des droits, basée sur une identité ou un rôle.</strong></span></p>
<p style="text-align: justify;">Dans des entités où les échanges sont plus dynamiques et plus fluctuants, cette abstraction au travers de rôles seuls peut s’avérer insuffisante. De nouveaux modèles ont émergé <span style="font-weight: normal !msorm;"><strong>pour représenter des organisations plus complexes</strong></span>, prenant en compte des <span style="font-weight: normal !msorm;"><strong>attributs supplémentaires, évolutifs, pour évaluer plus finement un droit d’accès à un instant t</strong></span> : de l’admin-time, nous entrons dans le run-time.</p>
<p> </p>
<h2 style="text-align: justify;">Les nouvelles approches d’autorisation : Run-time</h2>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">La complexification des systèmes d’informations, donc des accès, ont conduit à l&rsquo;approche run-time. Une approche qui répond aux besoins de <span style="font-weight: normal !msorm;"><strong>flexibilité et de sécurité</strong></span> dynamiques des organisations. Contrairement à l&rsquo;ère “admin-time”, caractérisée par des permissions statiques, l&rsquo;ère “run-time” offre une gestion en temps réel au moment de la demande d’accès, fondée sur différents éléments contextuels. Cette transition vers des modèles d&rsquo;autorisation plus flexibles et précis permet aux organisations de <span style="font-weight: normal !msorm;"><strong>s&rsquo;adapter aux changements et de mieux protéger leurs ressources contre les menaces actuelles.</strong></span></p>
<p style="text-align: justify;"> </p>
<h3 style="text-align: justify;">Graph-Based Access Control (GBAC)</h3>
<p style="text-align: justify;">Le modèle GBAC (Graph-Based Access Control) ou GraphBAC, repose sur l’utilisation de graphes pour représenter les relations entre les utilisateurs, les rôles et les ressources au sein d&rsquo;une organisation. Ces 3 types d’entités (utilisateurs, rôles, ressources) et les relations entre elles constituent le cœur de ce modèle : on peut représenter les entités par les nœuds du graphe, et les relations entre elles par les arêtes.</p>
<p style="text-align: justify;">Les autorisations d’accès à une ressource sont <span style="font-weight: normal !msorm;"><strong>déterminées en temps réel par des requêtes sur cette base de données de graphe, </strong></span>permettant de <span style="font-weight: normal !msorm;"><strong>prendre des décisions d&rsquo;accès basées sur les connexions entre les entités </strong></span>au moment de la demande. Un utilisateur peut ainsi obtenir l&rsquo;accès à une ressource en fonction de son rôle et de ses relations avec d&rsquo;autres utilisateurs ou ressources de l’organisation</p>
<p style="text-align: justify;"><img loading="lazy" decoding="async" class="aligncenter wp-image-24963 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image6-FR-1.png" alt="Principe de fonctionnement du modèle d'accès GBAC" width="900" height="561" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image6-FR-1.png 900w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image6-FR-1-306x191.png 306w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image6-FR-1-63x39.png 63w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image6-FR-1-768x479.png 768w" sizes="auto, (max-width: 900px) 100vw, 900px" /></p>
<p style="text-align: justify;">Le modèle GBAC est <span style="font-weight: normal !msorm;"><strong>adapté aux environnements dynamiques de grandes organisations</strong></span>, où les relations entre entités évoluent constamment. En revanche, sa mise en œuvre peut s&rsquo;avérer complexe et les projets de <span style="font-weight: normal !msorm;"><strong>mise en place</strong></span> sont relativement <span style="font-weight: normal !msorm;"><strong>long</strong></span><strong>s</strong> donc avec des <span style="font-weight: normal !msorm;"><strong>coûts élevés non négligeable</strong></span><strong>s</strong>. De plus, l&rsquo;ajout progressif de nouvelles relations peut rendre le <span style="font-weight: normal !msorm;"><strong>graphe de plus en plus difficile à gérer</strong></span>, <span style="font-weight: normal !msorm;"><strong>compliquant ainsi les activités d&rsquo;audit interne ou encore de recertification par exemple.</strong></span></p>
<p style="text-align: justify;"> </p>
<h3 style="text-align: justify;">Attribute-Based Access Control (ABAC)</h3>
<p style="text-align: justify;">Dans le modèle d’accès ABAC (Attribute-Based Access Control), la gestion des accès à une ressource s&rsquo;appuie sur la combinaison dynamique d&rsquo;attributs. Ces attributs concernent aussi bien l&rsquo;utilisateur demandant l&rsquo;accès (rôle, groupe), la ressource demandée (type de ressource), que le contexte dans lequel s’effectue la demande (heure, type de réseau). Cette approche permet d&rsquo;autoriser ou non l&rsquo;accès de façon flexible et en temps réel.</p>
<p style="text-align: justify;">Le modèle a été formalisé en 2014 dans la publication par le <strong>NIST</strong> (<strong>SP 800-162)</strong> qui fournit des informations détaillées pour sa mise en place.</p>
<p style="text-align: justify;">4 composants sont essentiels au fonctionnement de ce modèle : les Policy Enforcement Points (PEP), les Policy Decision Points (PDP), les Policy Administration Points (PAP), et les Policy Information Points (PIP).</p>
<p style="text-align: justify;"><img loading="lazy" decoding="async" class="aligncenter wp-image-24967 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image7-FR-1.png" alt="Principe de fonctionnement du modèle d'accès ABAC" width="1201" height="567" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image7-FR-1.png 1201w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image7-FR-1-405x191.png 405w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image7-FR-1-71x34.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image7-FR-1-768x363.png 768w" sizes="auto, (max-width: 1201px) 100vw, 1201px" /></p>
<p style="text-align: justify;">Après interception par le <span style="font-weight: normal !msorm;"><strong>PEP</strong></span>, la demande d&rsquo;accès est transmise au <span style="font-weight: normal !msorm;"><strong>PDP</strong></span>, qui est responsable de la prise de décision en analysant les politiques d&rsquo;accès qui sont gérer au niveau du PAP et souvent accessible depuis une base de données de politique d’accès. Le <span style="font-weight: normal !msorm;"><strong>PIP </strong></span>fournit lui, au <span style="font-weight: normal !msorm;"><strong>PDP</strong></span> des informations complémentaires sur l&rsquo;utilisateur ou la ressource provenant de différentes sources permettant ainsi de rendre des décisions conformes aux règles d’accès. Pour les informations contextuelles le système d’information peut être connecter à d’autres outils ou sources (IDS, logs, capteurs) qui permettent la collecte de ces informations au moment d’une demande d’accès.</p>
<p style="text-align: justify;">L&rsquo;ABAC se présente comme un <span style="font-weight: normal !msorm;"><strong>modèle particulièrement intéressant dans les environnements où les besoins d&rsquo;accès sont variés et évolutifs,</strong></span> car il permet une gestion fine et granulaire des autorisations, notamment dans le cadre du PAM (Privileged Access Management), concernant des accès, et ressources critiques.</p>
<p style="text-align: justify;">Cependant, ce niveau de détail et de flexibilité vient avec des <span style="font-weight: normal !msorm;"><strong>défis</strong></span> comme la <span style="font-weight: normal !msorm;"><strong>revue continue des attributs, la maintenance des politiques</strong></span> qui nécessitent une attention constante afin de s’assurer qu’ils répondent aux besoins de l’entreprise. Au fil du temps, le <span style="font-weight: normal !msorm;"><strong>nombre croissant</strong></span> d&rsquo;attributs et de conditions peut compliquer le <span style="font-weight: normal !msorm;"><strong>maintien d&rsquo;une architecture ABAC claire et fonctionnelle</strong></span>, surtout dans des environnements en perpétuelle transformation.</p>
<p style="text-align: justify;">Dans les architectures ABAC actuelle, les <span style="font-weight: normal !msorm;"><strong>PEPs sont généralement conçus pour fonctionner uniquement avec les PDPs du même fournisseur</strong></span>, avec des protocoles propriétaires, sans support pour une compatibilité entre différents fournisseurs.</p>
<p style="text-align: justify;">Standardiser la manière dont ces différents PEP et PDP interagissent, afin d&rsquo;améliorer l&rsquo;interopérabilité des systèmes et de réduire la dépendance à un seul fournisseur est l’objectif du groupe de travail OpenID AuthZEN.</p>
<h4 style="text-align: justify;">OpenID AuthZEN : Vers une interopérabilité améliorée</h4>
<p style="text-align: justify;">AuthZen est une initiative<span style="font-weight: normal !msorm;"><strong> lancée en 2023</strong></span>, au travers d’un groupe de travail, par l&rsquo;OpenID Foundation visant à standardiser les interactions entre les PEPs et les PDPs afin d&rsquo;améliorer l&rsquo;interopérabilité entre les systèmes de différents fournisseurs.</p>
<p style="text-align: justify;">Cette initiative répond aux problèmes actuels où les services d&rsquo;autorisation (PEP et PDP) sont souvent conçus pour fonctionner uniquement avec des solutions du même fournisseur, limitant leur interopérabilité.</p>
<p style="text-align: justify;">AuthZen a été lancée pour développer un <span style="font-weight: normal !msorm;"><strong>protocole standardisé qui faciliterai</strong></span><strong>t <span style="font-weight: normal !msorm;">l&rsquo;intégration et la communication entre les PEPs et les PDPs</span></strong>, et réduirait la dépendance aux solutions provenant d’un seul fournisseur mais aussi d&rsquo;améliorer la sécurité globale des autorisations.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-24971 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image8-FR-1.png" alt="Principe de fonctionnement d'AuthZen" width="1516" height="625" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image8-FR-1.png 1516w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image8-FR-1-437x180.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image8-FR-1-71x29.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image8-FR-1-768x317.png 768w" sizes="auto, (max-width: 1516px) 100vw, 1516px" /></p>
<p style="text-align: justify;">Pour rendre ces interactions plus flexibles et universelles, <span style="font-weight: normal !msorm;"><strong>AuthZen s&rsquo;appuie sur des architectures et des technologies existantes (OPA/Rego, XACML…), afin d’améliorer le déploiement, la scalabilité et l&rsquo;interopérabilité. </strong></span>Les deux premières étapes de cette standardisation avec l’Open ID AuthZen sont la mise en place d&rsquo;un <span style="font-weight: normal !msorm;"><strong>protocole</strong></span> simple de type <span style="font-weight: normal !msorm;"><strong>“Request/Response” </strong></span>et <span style="font-weight: normal !msorm;"><strong>“Permit/Deny”</strong></span> et d’une approche de décisions multiples afin de <strong>regrouper plusieurs demandes d’autorisation en une seule et de recevoir plusieurs décisions en retour.</strong></p>
<p style="text-align: justify;">Ce cadre de réflexion autour de l’AuthZen comprend des acteurs du domaine de la sécurité tels que 3Edges, Axiomatic, et d’autres. Il est également ouvert aux acteurs voulant faire évoluer les systèmes d’autorisation et rendre les architectures plus sécurisées et interopérables.</p>
<p style="text-align: justify;"> </p>
<h2 style="text-align: justify;">Perspectives d’évolution d’autorisation : Event-time</h2>
<p> </p>
<p style="text-align: justify;">Une nouvelle approche dans l&rsquo;évolution des systèmes d&rsquo;accès est l’event-time. Il se défini comme une <strong>implémentation de l’autorisation dynamique où les droits des accès sont ajustés en temps réel en réponse à des événements ou changements immédiats qui surviennent.</strong> Contrairement aux approches statiques ou basées sur des attributs, l’event-time se caractérise par une <strong>évaluation continue des droits d&rsquo;accès</strong>, afin de s&rsquo;assurer que tous les accès restent conformes aux politiques en place dans l’organisation.</p>
<p style="text-align: justify;">Par exemple, lorsque l&rsquo;état d&rsquo;un utilisateur change (promotion, départ, mobilité, etc.), le système ajuste ou révoque automatiquement ses droits d&rsquo;accès. Cette approche d’ajustement proactive basée sur des évènements est courante dans la surveillance des systèmes d’informations et la gestion des incidents de sécurité.</p>
<p style="text-align: justify;">L’event-time repose sur des concepts clés qui sont :</p>
<ul style="text-align: justify;">
<li>Les <strong>écouteurs</strong> (<span style="font-weight: normal !msorm;"><strong>listeners</strong></span>), des composants du système surveillant les évènements en temps et analysant les changements importants (mobilité, promotions, départ, etc.) provenant de diverses sources notamment systèmes RH.</li>
<li>Les <span style="font-weight: normal !msorm;"><strong>déclencheurs</strong></span> (<span style="font-weight: normal !msorm;"><strong>triggers</strong></span>), des actions en réponse à un événement identifié par un écouteur comme la révocation des droits d’accès au jour effectif de départ d’un utilisateur.</li>
<li>Shared Signals <strong>(Signaux partagés</strong>), permettant à différents systèmes de partager des informations sur des événements en temps réel.</li>
<li>L’évaluation continue est la vérification constante des droits d&rsquo;accès pour s&rsquo;assurer que chaque action ou accès reste en conformité avec les politiques.</li>
</ul>
<p style="text-align: justify;">Les frameworks et standards jouent un rôle clé dans l’implémentation de l’event-time en fournissant une structure pour la mise en œuvre les concepts dans les systèmes :</p>
<p style="text-align: justify;">Le Shared Signals Framework (SSF) est directement lié au concept de shared signals, qui <strong>permet aux systèmes via une API de partager des informations sur les événements en temps réel pour assurer une gestion cohérente des accès.</strong> L&rsquo;évaluation continue de ces informations est soutenue par le <span style="font-weight: normal !msorm;"><strong>CAEP</strong></span> (Continuous Access Evaluation Protocol), un <strong>protocole permettant de standardiser l’écriture des changements de statut.</strong> Le <span style="font-weight: normal !msorm;"><strong>RISC</strong></span> (Risk and Incident Sharing and Coordination) est <span style="font-weight: normal !msorm;"><strong>un protocole générique</strong></span> qui lui permet la <strong>standardisation de la transmission </strong>et la réception des incidents de sécurité entre ces différents systèmes, renforçant ainsi la réactivité globale d’un système d’information.</p>
<p style="text-align: justify;">L’event-time ne repose pas sur un modèle spécifique de type RBAC ou ABAC mais peut <strong>fonctionner comme une couche de gestion des accès complémentaires</strong> à ces systèmes d&rsquo;accès traditionnels en les rendant <span style="font-weight: normal !msorm;"><strong>plus dynamiques et alignés</strong></span> sur les situations en temps réel.</p>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">L&rsquo;évolution des modèles d&rsquo;autorisation, des approches traditionnelles aux méthodes modernes et dynamiques, reflète <strong>l&rsquo;adaptation continue de l’IAM</strong> et des systèmes d&rsquo;accès aux besoins croissants et changeants des organisations.</p>
<p style="text-align: justify;"><strong>Les approches admin-time ont posé les bases de la sécurité</strong> des ressources avec des modèles tels que le DAC et le MAC. Le RBAC a introduit une gestion structurée des droits, <strong>largement adoptée dans les organisations</strong> aujourd&rsquo;hui du fait de son application relativement simple.</p>
<p style="text-align: justify;"><strong>Avec l&rsquo;avènement du runtime, les décisions d&rsquo;accès se sont affinées </strong>en s&rsquo;appuyant sur des attributs spécifiques aux utilisateurs, aux ressources et au contexte, comme avec les modèles ABAC et GBAC. Cependant, ces modèles <strong>toujours plus sophistiqués</strong> ont conduit à l’apparition de nombreux <strong>éditeurs de solutions propriétaires</strong>, limitant <strong>l’interopérabilité</strong> des composants d’autorisation et créant <strong>une dépendance</strong> envers des technologies spécifiques. C’est ainsi qu’ont émergé des initiatives telles que le <strong>groupe de travail AuthZen</strong> œuvrant à l’élaboration de standards.</p>
<p style="text-align: justify;"><strong>L&rsquo;approche event-time apporte une réactivité en temps réel,</strong> permettant aux systèmes <strong>d&rsquo;ajuster automatiquement les accès</strong> en réponse à des événements spécifiques. Le <strong>CAEP et le Shared Signals Framework </strong>facilitent cette dynamique en standardisant l&rsquo;échange d&rsquo;informations entre systèmes, renforçant ainsi la sécurité et la conformité.</p>
<p style="text-align: justify;">Une vue d’ensemble de ces différentes approches et de leurs modèles associés est présentée dans la frise chronologique ci-dessous, accompagnée d’un tableau récapitulatif des différents modèles abordés. </p>
<p style="text-align: justify;"><img loading="lazy" decoding="async" class="aligncenter wp-image-24975 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image9-FR-V2-1.png" alt="Frise chronologique des approches et modèles d'autorisation" width="1559" height="733" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image9-FR-V2-1.png 1559w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image9-FR-V2-1-406x191.png 406w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image9-FR-V2-1-71x33.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image9-FR-V2-1-768x361.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image9-FR-V2-1-1536x722.png 1536w" sizes="auto, (max-width: 1559px) 100vw, 1559px" /><img loading="lazy" decoding="async" class="aligncenter wp-image-24979 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image10-FR-V2-1.png" alt="Tableau récapitulatif des approches et modèles d'accès" width="1525" height="1049" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image10-FR-V2-1.png 1525w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image10-FR-V2-1-278x191.png 278w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image10-FR-V2-1-57x39.png 57w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/12/Image10-FR-V2-1-768x528.png 768w" sizes="auto, (max-width: 1525px) 100vw, 1525px" />En combinant ces différentes approches, vous pouvez mettre en place une gestion des accès plus sécurisée, flexible et proactive, capable de répondre aux défis actuels et futurs liés à l’identité. Ces évolutions soulignent également l&rsquo;importance d&rsquo;adopter des solutions d&rsquo;autorisation adaptatives et interopérables pour assurer une protection efficace des ressources tout en répondant aux exigences opérationnelles des équipes.</p>
<p style="text-align: justify;">Ces évolutions posent une question essentielle sur <strong>la capacité des organisations à anticiper ces changements et intégrer ces nouvelles dynamique de la gestion de leur accès.</strong></p>
<p style="text-align: justify;"><strong> </strong>Que vous utilisiez encore des modèles admin-time, exploriez des options runtime, ou envisagiez de passer à une gestion event-time, il est crucial de choisir un modèle qui répond à vos enjeux spécifiques. Il est aussi très important d’<strong>anticiper les conséquences sur la gestion dans le temps de ce modèle</strong> (revue de droits, mesure de la qualité des données, revue des politiques, définition des réactions attendues, etc.). </p>
<p style="text-align: justify;">Et vous quel type de modèle utilisez-vous ?  </p>
<p style="text-align: justify;">N’hésitez pas à nous contacter pour en savoir plus et comprendre concrètement comment les appliquer en fonction du contexte de votre organisation !</p>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">[1] <em><a href="https://fr.wikipedia.org/wiki/Habilitation_de_s%C3%A9curit%C3%A9_en_France">Habilitation de sécurité en France</a>, Wikipédia (wikipedia.org)</em><a href="#_ftnref1" name="_ftn1"></a></p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/2024/12/gestion-des-acces-comment-lautorisation-evolue-pour-repondre-aux-defis-et-besoins-des-organisations/">Gestion des accès : comment l’autorisation évolue pour répondre aux défis et besoins des organisations ?</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com">RiskInsight</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.riskinsight-wavestone.com/2024/12/gestion-des-acces-comment-lautorisation-evolue-pour-repondre-aux-defis-et-besoins-des-organisations/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Améliorer la sécurité de son infrastructure IoT : conseils de configuration et bonnes pratiques sur Azure IoT</title>
		<link>https://www.riskinsight-wavestone.com/2023/04/ameliorer-la-securite-de-son-infrastructure-iot-conseils-de-configuration-et-bonnes-pratiques-sur-azure-iot/</link>
					<comments>https://www.riskinsight-wavestone.com/2023/04/ameliorer-la-securite-de-son-infrastructure-iot-conseils-de-configuration-et-bonnes-pratiques-sur-azure-iot/#respond</comments>
		
		<dc:creator><![CDATA[Arnaud Soullié]]></dc:creator>
		<pubDate>Fri, 07 Apr 2023 13:00:00 +0000</pubDate>
				<category><![CDATA[Deep-dive]]></category>
		<category><![CDATA[IoT & smart products]]></category>
		<category><![CDATA[Azure]]></category>
		<category><![CDATA[IoT]]></category>
		<category><![CDATA[RBAC]]></category>
		<guid isPermaLink="false">https://www.riskinsight-wavestone.com/?p=20199</guid>

					<description><![CDATA[<p>Les plateformes IoT permettent de connecter, de gérer et de surveiller des flottes d’appareils. Les 3 leaders du Cloud, GCP, AWS et Azure ont chacun leur offre, dans un secteur particulièrement fragmenté, qui voit de nombreux acteurs en concurrence. Azure,...</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/2023/04/ameliorer-la-securite-de-son-infrastructure-iot-conseils-de-configuration-et-bonnes-pratiques-sur-azure-iot/">Améliorer la sécurité de son infrastructure IoT : conseils de configuration et bonnes pratiques sur Azure IoT</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com">RiskInsight</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p style="text-align: justify;">Les plateformes IoT permettent de connecter, de gérer et de surveiller des flottes d’appareils. Les 3 leaders du Cloud, GCP, AWS et Azure ont chacun leur offre, dans un secteur particulièrement fragmenté, qui voit de nombreux acteurs en concurrence.</p>
<p style="text-align: justify;">Azure, ces dernières années, s’impose de plus en plus dans ce secteur, comme a pu le souligner le Gartner, qui les classe dans les<strong> leaders visionnaires</strong> des plateformes IIoT [1] en raison de ses capacités, et de sa couverture quasiment complète de tous les cas d’utilisation et secteurs d’activité.</p>
<p style="text-align: justify;">L’IoT, par nature souvent largement exposé, voire sur Internet, <strong>peut-être la cible d’attaques</strong>.</p>
<p style="text-align: justify;">Avant de passer à des <strong>recommandations</strong> spécifiques pour protéger vos dispositifs IoT et vos données, examinons comment les différents services d&rsquo;Azure IoT peuvent être utilisés ensemble pour <strong>créer des solutions IoT sécurisées</strong>.</p>
<h1 style="text-align: justify;">Présentation de l’offre Azure IoT</h1>
<p style="text-align: justify;">Microsoft Azure IoT est une <strong>plateforme de bout en bout</strong> pour la connectivité, l’analyse et la visualisation de données provenant d’appareils IoT. Elle offre également une <strong>interconnexion avec les autres services standards d’Azure</strong> comme <em>Azure Machine Learning </em>ou encore <em>Azure SQL Database. </em></p>
<p style="text-align: justify;">Azure IoT propose <strong>deux écosystèmes de solutions</strong> à ses clients :</p>
<ul style="text-align: justify;">
<li><em>Azure IoT Central</em> est une <strong>aPaaS</strong>, <em>application Platform as a Service</em>, <strong>entièrement managée</strong> qui <strong>simplifie la création de solutions IoT</strong>. Ce service est responsable de connecter, gérer et exploiter des flottes d’appareils, et fournit à une interface utilisateur de gestion. <em>Azure IoT Central</em> est en réalité <strong>un agrégat de différents services Azure IoT </strong>comme <em>Azure</em> <em>IoT Hub</em> ou encore <em>Azure</em> <em>IoT Hub Device Provisioning Service (DPS)</em>.</li>
</ul>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-20200 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image1.png" alt="" width="836" height="543" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image1.png 836w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image1-294x191.png 294w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image1-60x39.png 60w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image1-768x499.png 768w" sizes="auto, (max-width: 836px) 100vw, 836px" /></p>
<p style="text-align: justify;"><em>Azure IoT Central </em><strong>propose des modèles d’application</strong> selon plusieurs domaines d’activité : Retail, Santé, Energie, Industrie, etc., et vise une mise en œuvre « clés en main ».  </p>
<ul style="text-align: justify;">
<li>Un <strong>écosystème personnalisé</strong> grâce aux différents services PaaS, <em>Platform as a Service</em>, d’Azure. Dans cet écosytème, deux services ; <em>Azure IoT Hub</em> et <em>Azure Digital Twins </em>sont les <strong>fondations d’une solution IoT</strong>. Nous les avons également combinés à <em>Azure Device Provisionning </em>et <em>Azure Device Update</em> pour une couverture des besoins cybersécurité optimale.</li>
</ul>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-20202 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image2.png" alt="" width="830" height="519" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image2.png 830w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image2-305x191.png 305w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image2-62x39.png 62w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image2-768x480.png 768w" sizes="auto, (max-width: 830px) 100vw, 830px" /></p>
<p style="text-align: justify;">Ces deux écosystèmes permettent à Azure de <strong>répondre à tous types de besoins IoT et IIoT</strong> :</p>
<ul style="text-align: justify;">
<li><em>Azure</em> <em>IoT Central </em>est un très bon service si vous souhaitez développer rapidement une <strong>application peu complexe</strong> grâce à son catalogue de modèle d’application.</li>
<li>Si vous souhaitez une <strong>solution personnalisée</strong>, ou avec des fonctionnalités non supportées par <em>Azure</em> <em>IoT Central</em> : optez pour un écosystème fondé sur <em>Azure IoT Hub</em>.</li>
</ul>
<p style="text-align: justify;">Maintenant que nous avons une bonne compréhension des écosystèmes d&rsquo;Azure IoT, il est important de se concentrer sur la <strong>sécurisation de ces écosystèmes</strong>. Comment protéger efficacement des dispositifs IoT et des données lors de l&rsquo;utilisation des services Azure IoT ? C&rsquo;est ce que nous allons étudier dans les prochaines parties.</p>
<p> </p>
<h1 style="text-align: justify;">Préambule : l’outil Azure CLI</h1>
<p style="text-align: justify;">Afin de gérer des ressources Azure, Microsoft met à disposition plusieurs outils, la plupart étant utilisables en CLI (<em>Command Line Interface</em>, ou en lignes de commandes). L’outil proposant le plus de fonctionnalités pour la gestion étant<strong> Azure CLI</strong>.</p>
<p style="text-align: justify;">Cet outil, disponible pour les systèmes d’exploitation de type <strong>Windows</strong> et <strong>UNIX</strong>, permet notamment à un utilisateur membre d’un environnement Azure de <strong>gérer et d’obtenir des informations concernant des ressources Azure</strong>. Il est à noter que <strong>l’éventail des possibilités de cet outil varie en fonction des droits</strong> que possède l’utilisateur sur les ressources en question.</p>
<p style="text-align: justify;">Pour l’installer, Microsoft met à disposition <a href="https://learn.microsoft.com/fr-fr/cli/azure/install-azure-cli">une page dédiée</a> expliquant les étapes pour tout type d’environnement.</p>
<p style="text-align: justify;">Afin de l’utiliser, il suffit de <strong>se connecter</strong> à un compte utilisateur Azure via l’interface de commande choisie (<strong>Powershell</strong> ou <strong>Bash</strong>), puis d’<strong>entrer les commandes</strong> voulues. Lorsque l’utilisation de cet outil est terminée, <strong>une déconnexion</strong> du compte est recommandée.</p>
<p style="text-align: justify;"><strong>Une utilisation classique</strong> de cet outil est présentée ci-dessous :</p>
<table style="border-collapse: collapse; width: 100%;">
<tbody>
<tr>
<td style="width: 100%; background-color: #002060; border-color: #002060; border-style: solid;">
<p><span style="color: #ffffff;"><span style="color: #ffff00;">az</span> login [<span style="color: #808080;">-u</span> Nom d’utilisateur] [<span style="color: #808080;">&#8211;use-device</span>]</span></p>
<p><span style="color: #ffffff;">[Commandes Azure CLI] [Exemple : ]</span><br /><span style="color: #ffffff;"><span style="color: #ffff00;">az</span> resource list</span></p>
<p><span style="color: #ffffff;"><span style="color: #ffff00;">az</span> logout</span></p>
</td>
</tr>
</tbody>
</table>
<p style="text-align: justify;">La documentation de cet outil, présentant et expliquant l’ensemble des commandes possibles, est disponible à <a href="https://learn.microsoft.com/fr-fr/cli/azure/reference-index?view=azure-cli-latest">cette adresse</a>.</p>
<p style="text-align: justify;">Cet outil sera utilisé par la suite lors d’exemple de manipulations techniques.</p>
<p style="text-align: justify;"> </p>
<h1 style="text-align: justify;">1<sup>er</sup> vecteur de sécurisation : authentification des objets</h1>
<p style="text-align: justify;">L’authentification des appareils est cruciale pour une infrastructure Azure car elle permet de garantir que <strong>seuls les dispositifs autorisés puissent accéder aux ressources</strong> Cloud. Les services Azure IoT supporte <strong>deux principaux moyens d’authentification</strong> pour les dispositifs IoT :</p>
<ul style="text-align: justify;">
<li>Un <strong>Jeton SAS</strong> (<em>Shared Access Signature</em>, ou <strong>SAS Token</strong> en anglais) est une <strong>chaine de caractères</strong> permettant d’authentifier des appareils, ainsi que des services. Un jeton SAP à la structure suivante :</li>
</ul>
<p style="text-align: justify;"><em> <img loading="lazy" decoding="async" class="aligncenter wp-image-20204 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image3.png" alt="" width="768" height="164" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image3.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image3-437x93.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image3-71x15.png 71w" sizes="auto, (max-width: 768px) 100vw, 768px" /></em></p>
<p style="text-align: justify;">Ce type d’authentification a une <strong>durée de validité</strong> définie et des <strong>permissions</strong>, qui lui sont attribué à partir d’une <em>stratégie d’accès,</em> sur un <strong>périmètre donné</strong>. La <strong><em>signature</em></strong><em>, </em>quant à elle, est un élément crucial car elle est<strong> responsable de garantir la sécurité des communications</strong> entre l’objet et les services Azure, mais également de prouver l’identité du dispositif. Cette signature est générée à partir d’un secret qui doit être <strong>propre à chaque appareil</strong>.</p>
<ul style="text-align: justify;">
<li>Un <strong>certificat X.509</strong> [2] est un certificat numérique permettant une <strong>authentification forte</strong> de l’objet. Il contient des informations sur l’<strong>entité émettrice</strong> du certificat, la durée de validité du certificat mais également l’<strong>identité du <em>sujet</em></strong> (par exemple : l’objet). L’une des forces des certificats est la capacité à pouvoir créer des chaines de certificats, et ainsi <strong>créer des relations de confiance</strong>:</li>
</ul>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-20206 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image4.png" alt="" width="844" height="426" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image4.png 844w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image4-378x191.png 378w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image4-71x36.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image4-768x388.png 768w" sizes="auto, (max-width: 844px) 100vw, 844px" /></p>
<p style="text-align: justify;">En termes de sécurité, les certificats X.509 offrent un <strong>niveau de sécurité plus élevé</strong>, en supposant un algorithme cryptographique à l’état de l’art, car ils permettent de <strong>représenter des relations de confiance</strong>. Cependant, la gestion et l’utilisation des certificats peut impliquer une <strong>complexité supplémentaire</strong> pour un projet IoT.</p>
<p style="text-align: justify;">Afin de forcer l’utilisation des certificats X.509 pour authentifier des objets connectés, il est possible <strong>d’interdire les jetons SAS pour un IoT Hub</strong>. En effet, les IoT Hubs d’Azure <strong>possèdent</strong> <strong>trois propriétés liées à l’utilisation ou non des jetons SAS</strong> :  <em>disableLocalAuth</em>, <em>disableDeviceSAS</em> et <em>disableModuleSAS</em>. Par conséquent, la bonne pratique associée à l’interdiction des jetons SAS passe par <strong>l’attribution de ces trois paramètres à </strong><em>True</em>. Cette manipulation peut être réalisée à l’aide de l’outil <strong>Azure CLI</strong> :</p>
<table style="border-collapse: collapse; width: 100%;">
<tbody>
<tr>
<td style="width: 836px; background-color: #002060; border-color: #002060; border-style: solid;">
<p><span style="color: #ffffff;"><span style="color: #ffff00;">az <span style="color: #ffffff;">resource update <span style="color: #808080;">&#8211;resource-group</span> &lt;Resource_Group&gt; <span style="color: #808080;">-n</span> &lt;IoT_Hub&gt;<span style="color: #808080;"> &#8211;resource-type</span> Microsoft.Devices/IotHubs <span style="color: #808080;">&#8211;set</span> properties.disableDeviceSAS=true properties.disableModuleSAS=true properties.disableLocalAuth=true</span></span></span></p>
</td>
</tr>
</tbody>
</table>
<p style="text-align: justify;">La vérification des valeurs de ces mêmes paramètres peut également être réalisée à l’aide d’<strong>Azure CLI</strong> :</p>
<table style="border-collapse: collapse; width: 100%;">
<tbody>
<tr>
<td style="width: 836px; background-color: #002060; border-color: #002060; border-style: solid;">
<p><span style="color: #ffffff;"><span style="color: #ffff00;"><span style="color: #ffffff;"><span style="color: #ffff00;">az</span> resource show <span style="color: #808080;">&#8212;resource-group</span> &lt;Resource_Group&gt; <span style="color: #808080;">-n</span> &lt;IoT_Hub&gt; <span style="color: #808080;">&#8211;resource-type</span> Microsoft.Devices/IotHubs | <span style="color: #ffff00;">Select-String</span> <span style="color: #33cccc;">« (disableLocalAuth|disableDeviceSAS|disableModuleSAS) »</span></span></span></span></p>
</td>
</tr>
</tbody>
</table>
<p style="text-align: justify;">Dans l’exemple de réponse ci-dessous, la propriété <em>disableDeviceSAS</em> a été correctement paramétrée, ce qui n’est pas le cas des deux autres.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-20217 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image9.png" alt="" width="907" height="127" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image9.png 907w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image9-437x61.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image9-71x10.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image9-768x108.png 768w" sizes="auto, (max-width: 907px) 100vw, 907px" /></p>
<p style="text-align: justify;">Le <strong>portail d’Azure</strong> permet également d’effectuer cette vérification :</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-20208 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image5.png" alt="" width="580" height="317" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image5.png 580w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image5-349x191.png 349w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image5-71x39.png 71w" sizes="auto, (max-width: 580px) 100vw, 580px" /></p>
<p style="text-align: justify;">Le choix du moyen d&rsquo;authentification pour Azure IoT <strong>dépendra des exigences de sécurité</strong> de votre solution. Si vous avez besoin d&rsquo;une <strong>sécurité élevée</strong> et que vous avez une infrastructure pour gérer les certificats, alors l’authentification par <strong>certificat X.509</strong> est une bonne option. Cependant, si vous recherchez une <strong>solution simple à gérer et à utiliser</strong>, le <strong>jeton SAS </strong>pourrait être plus adapté à vos besoins.</p>
<p style="text-align: justify;"> </p>
<h1 style="text-align: justify;">2<sup>ème</sup> vecteur de sécurisation : RBAC et alertes</h1>
<p style="text-align: justify;">L’assignement des rôles sur votre infrastructure Azure IoT doit être <strong>réfléchi et défini selon les besoins des utilisateurs</strong>. Une définition de rôles et de permissions précise permet de <strong>limiter l’accès aux ressources</strong> et aux divers fonctionnalités disponibles sur la plateforme. Les différents services Azure IoT fournissent une <strong>multitude de rôles préconfigurés</strong> qui peuvent être adaptés à vos besoins et à votre organisation. Ensuite, <strong>appliquer le principe du moindre privilège</strong>, et limiter le nombre de comptes disposant de privilèges importants, permet d’<strong>améliorer le niveau de sécurité</strong> de votre infrastructure Azure IoT.</p>
<p style="text-align: justify;"><strong>Azure CLI</strong> permet notamment de <strong>lister les utilisateurs possédant des droits sur la ressource Azure IoT souhaitée</strong>, ainsi que leurs rôles associés. La commande suivante permet de réaliser cette action :</p>
<table style="border-collapse: collapse; width: 100%; height: 129px;">
<tbody>
<tr style="height: 129px;">
<td style="width: 100%; background-color: #002060; border-color: #002060; border-style: solid; height: 129px;">
<p><span style="color: #ffffff;"><span style="color: #ffff00;"><span style="color: #33cccc;"><span style="color: #ffff00;">az</span> <span style="color: #ffffff;">role assignment list</span> <span style="color: #808080;">&#8211;scope</span> « /subscriptions/&lt;ID_de_souscription&gt;/resourceGroups/&lt;Resource_Group&gt;/providers/Microsoft.Devices/IotHubs/&lt;IoT_Hub&gt; » <span style="color: #808080;">&#8211;include-inherited</span></span></span></span></p>
</td>
</tr>
</tbody>
</table>
<p style="text-align: justify;">Il est possible d’utiliser des sélecteurs de chaînes de caractères (<em>Select-String</em> pour <strong>Powershell</strong>, <em>grep</em> pour <strong>Bash</strong>) afin de ne récupérer que les informations souhaitées.</p>
<p style="text-align: justify;">Dans l’exemple ci-dessous, les <strong>noms</strong>, <strong>types</strong> et <strong>rôles</strong> ont été les seuls éléments récupérés à l’aide de <em>Select-String </em>:</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-20220 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image10.png" alt="" width="852" height="802" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image10.png 852w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image10-203x191.png 203w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image10-41x39.png 41w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image10-768x723.png 768w" sizes="auto, (max-width: 852px) 100vw, 852px" /></p>
<p style="text-align: justify;">La fonction des rôles intégrés Azure est disponible à <a href="https://learn.microsoft.com/fr-fr/azure/role-based-access-control/built-in-roles">cette page</a>.</p>
<p style="text-align: justify;">De plus, la configuration d’<strong>alertes basées sur les métriques</strong> de vos services Azure IoT est un autre outil à prendre en compte. Des alertes peuvent être configurées pour détecter des comportements suspects ou des anomalies, et ainsi <strong>permettre une investigation rapide</strong> sur votre infrastructure. Azure met à la disposition de ses clients une large collection de <em>signaux </em>permettant de définir des conditions d’alertes. Il est également possible de <strong>définir des signaux d’alertes customisés</strong> via le langage de requête utilisé par <em>Azure Log Analytics</em>.</p>
<p style="text-align: justify;">Le <strong>Portail Azure</strong> est le moyen le plus facile pour mettre en place des alertes basées sur les données collectées par le IoT Hub. Par exemple, pour définir une règle d’alerte de journal, il faut :</p>
<ol style="text-align: justify;">
<li>Aller sur la page de management du IoT Hub souhaité ;</li>
<li>Aller dans la sous-catégorie <em>Logs</em> de la catégorie <em>Monitoring</em>;</li>
<li>Choisir une règle en utilisant le langage de <em>Azure Log Analytics </em>;</li>
<li>Ajouter une règle d’alerte liée à cette requête ;</li>
<li>Choisir l’opérateur, l’unité, la valeur seuil, la récurrence de vérification et la période concernée par la règle.</li>
</ol>
<p style="text-align: justify;">Ces actions sont résumées par les captures d’écran ci-dessous :</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-20210 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image6.png" alt="" width="909" height="244" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image6.png 909w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image6-437x117.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image6-71x19.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image6-768x206.png 768w" sizes="auto, (max-width: 909px) 100vw, 909px" /></p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-20212 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image7.png" alt="" width="824" height="603" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image7.png 824w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image7-261x191.png 261w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image7-53x39.png 53w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image7-768x562.png 768w" sizes="auto, (max-width: 824px) 100vw, 824px" /></p>
<p style="text-align: justify;">Il suffira ensuite de choisir un <strong>groupe d’action</strong> lié à un type d’action (envoi de mail, de SMS, etc.).</p>
<p style="text-align: justify;">L’exemple donné entrainera une action si le nombre de connexions échouées d’objets connectés à l’IoT Hub concerné dépasse les 10 échecs en 10 minutes ou moins.</p>
<p style="text-align: justify;">En complément, <a href="https://learn.microsoft.com/fr-fr/azure/azure-monitor/alerts/tutorial-log-alert">un guide détaillé</a> prenant la forme d’un tutoriel est disponible sur la documentation Azure. Il est à noter que ce service est payant en supplément.</p>
<p style="text-align: justify;"> </p>
<h1 style="text-align: justify;">3<sup>ème</sup> vecteur de sécurisation : le service en lui même</h1>
<p style="text-align: justify;">Enfin, la<strong> mise en place d’une configuration adéquate</strong> des services Azure IoT est un autre élément clé pour améliorer le niveau de maturité cyber de la plateforme. Cela inclut des options telles que par exemple les <strong>règles de routage</strong> ou encore paramétrer la version minimum de TLS utilisé par les appareils pour se connecter sur <em>Azure IoT Hub</em>.</p>
<p style="text-align: justify;">Les <strong>règles de routage</strong> sont utilisées pour <strong>rediriger les messages</strong> des appareils IoT vers un <em>point de terminaison</em> (stockage, services, base de données, etc.) et sont paramétrables par des <em>requêtes de routage</em>. Il est recommandé de <strong>filtrer les messages entrants</strong>, via les requêtes de routage, afin d’augmenter la sécurité de votre solution IoT.</p>
<p style="text-align: justify;">La <strong>vérification de la version minimale de TLS acceptée</strong> peut être faite à l’aide d’<strong>Azure CLI</strong> : en effet, un IoT Hub possède l’attribut <em>minTlsVersion</em> permettant de contrôler cette propriété. Cette vérification est réalisée à l’aide de la commande suivante :</p>
<table style="border-collapse: collapse; width: 100%;">
<tbody>
<tr>
<td style="width: 100%; background-color: #002060; border-color: #002060; border-style: solid;">
<p><span style="color: #ffffff;"><span style="color: #ffff00;">az <span style="color: #ffffff;">resource show <span style="color: #808080;">&#8212;resource-group</span> &lt;Resource_Group&gt; <span style="color: #808080;">-n</span> &lt;IoT_Hub&gt; <span style="color: #808080;">&#8211;resource-type</span> Microsoft.Devices/IotHubs | <span style="color: #ffff00;">Select-String</span> <span style="color: #33cccc;">« minTlsVersion »</span></span></span></span></p>
</td>
</tr>
</tbody>
</table>
<p style="text-align: justify;">Si cette commande <strong>ne retourne rien</strong>, ou retourne <strong>une valeur inférieure à 1.2</strong>, alors la configuration <strong>n’est pas satisfaisante</strong>.</p>
<p style="text-align: justify;">Le <strong>portail d’Azure</strong> permet également d’effectuer cette vérification :</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-20214 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image8.png" alt="" width="668" height="315" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image8.png 668w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image8-405x191.png 405w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image8-71x33.png 71w" sizes="auto, (max-width: 668px) 100vw, 668px" /></p>
<p style="text-align: justify;"> </p>
<h1 style="text-align: justify;">En synthèse</h1>
<p style="text-align: justify;"><strong>La sécurité est un enjeu majeur pour les projets IoT</strong> : Microsoft, avec son produit Azure IoT, fournit une plateforme IoT répondant à une majorité des besoins IoT, et ce de manière sécurisée, sous couvert d’en faire la bonne configuration. Au cours de cette article, nous avons abordé<strong> des recommandations permettant d’améliorer le niveau de sécurité</strong> de votre infrastructure Azure IoT.</p>
<p style="text-align: justify;">Il est important de garder en tête que <strong>d’autres vecteurs d’attaques existent</strong>, tels que les vulnérabilités matérielles et logicielles ainsi que les réseaux utilisés par les dispositifs IoT.  En somme, la sécurité d’une infrastructure IoT est un <strong>défi complexe qui nécessite une approche de bout en bout</strong><strong>.</strong></p>
<p style="text-align: justify;"><strong> </strong></p>
<p style="text-align: justify;"> </p>
<p style="text-align: center;"><em>Avec la participation de Marius ANDRE</em></p>
<p style="text-align: justify;">[1] “Magic Quadrant for Global Industrial IoT Platforms”</p>
<p style="text-align: justify;"><a href="https://www.gartner.com/doc/reprints?id=1-2BQFX3BJ&amp;ct=221116&amp;st=sb">https://www.gartner.com/doc/reprints?id=1-2BQFX3BJ&amp;ct=221116&amp;st=sb</a></p>
<p style="text-align: justify;">[2] “Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile”</p>
<p style="text-align: justify;"><a href="https://www.rfc-editor.org/rfc/rfc5280">https://www.rfc-editor.org/rfc/rfc5280</a></p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/2023/04/ameliorer-la-securite-de-son-infrastructure-iot-conseils-de-configuration-et-bonnes-pratiques-sur-azure-iot/">Améliorer la sécurité de son infrastructure IoT : conseils de configuration et bonnes pratiques sur Azure IoT</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com">RiskInsight</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.riskinsight-wavestone.com/2023/04/ameliorer-la-securite-de-son-infrastructure-iot-conseils-de-configuration-et-bonnes-pratiques-sur-azure-iot/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Refondre son modèle d’habilitation : les questions essentielles (1/2)</title>
		<link>https://www.riskinsight-wavestone.com/2020/12/refondre-son-modele-dhabilitation-les-questions-essentielles-1-2/</link>
		
		<dc:creator><![CDATA[David GIORGETTI]]></dc:creator>
		<pubDate>Mon, 21 Dec 2020 08:49:34 +0000</pubDate>
				<category><![CDATA[Cybersecurity & Digital Trust]]></category>
		<category><![CDATA[Digital Identity]]></category>
		<category><![CDATA[ABAC]]></category>
		<category><![CDATA[droits]]></category>
		<category><![CDATA[Habilitation]]></category>
		<category><![CDATA[IAM]]></category>
		<category><![CDATA[modèle]]></category>
		<category><![CDATA[OrBAC]]></category>
		<category><![CDATA[RBAC]]></category>
		<guid isPermaLink="false">https://www.riskinsight-wavestone.com/?p=14850</guid>

					<description><![CDATA[<p>Introduction DAC, RBAC, OrBAC, ABAC ou encore GraphBAC ? Les modèles d’habilitation phares évoluent régulièrement et apportent chacun leur lot d’enjeux, de promesses et de complexité. Depuis une vingtaine d’années au cours desquelles les modèles RBAC/OrBAC semblent s’être imposés, les difficultés...</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/2020/12/refondre-son-modele-dhabilitation-les-questions-essentielles-1-2/">Refondre son modèle d’habilitation : les questions essentielles (1/2)</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com">RiskInsight</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h1 style="text-align: justify;">Introduction</h1>
<p style="text-align: justify;">DAC, RBAC, OrBAC, ABAC ou encore GraphBAC ? Les modèles d’habilitation phares évoluent régulièrement et apportent chacun leur lot d’enjeux, de promesses et de complexité.</p>
<p style="text-align: justify;">Depuis une vingtaine d’années au cours desquelles les modèles RBAC/OrBAC semblent s’être imposés, les difficultés de conception, d’implémentation et de maintenance d’un modèle d’habilitation sont restées les mêmes, et rares sont les exemples de réalisation parfaitement satisfaisants.</p>
<p style="text-align: justify;"><strong>Vouloir refondre son modèle d’habilitation amène à se poser beaucoup de questions. Nous essayons au travers de deux articles de répondre aux plus fréquentes.</strong></p>
<p style="text-align: justify;">Mais avant cela, revenons sur quelques notions de base concernant les modèles d’habilitation.</p>
<h1 style="text-align: justify;">Qu’est-ce qu’un modèle d’habilitation ?</h1>
<h2 style="text-align: justify;">Une couche d’abstraction…</h2>
<p style="text-align: justify;">Un modèle d’habilitation est une couche d’abstraction qui vient se placer au-dessus des permissions techniques (droits applicatifs, transactions, groupes…). Elle est constituée d’objets soigneusement définis (rôles, permissions…), disposant d’un nom en langage naturel, et souvent organisés hiérarchiquement.</p>
<h2 style="text-align: justify;">…qui simplifie la gestion des habilitations…</h2>
<p style="text-align: justify;">Cette couche d’abstraction permet notamment de rationaliser le nombre d’objets à manier.</p>
<p style="text-align: justify;">Pour le Métier, il devient plus facile de comprendre les habilitations disponibles et de demander ou valider les droits adéquats.</p>
<p style="text-align: justify;">Pour les équipes IT et le support, la charge d’attribution des habilitations s’en retrouve globalement réduite. La mise en place d’outils d’automatisation peut prendre en charge une grande partie des demandes quotidiennes, ce qui permet de traiter les demandes spécifiques avec plus d’attention.</p>
<h2 style="text-align: justify;">… et améliore la sécurité</h2>
<p style="text-align: justify;">Au-delà de la dimension réglementaire et normative de la maîtrise des habilitations, souvent rappelée par les Commissaires aux Comptes lors de leurs audits, le manque de contrôle des habilitations est une porte ouverte aux intrusions et aux mauvaises utilisations du SI.</p>
<p style="text-align: justify;">La connaissance de ses habilitations est un prérequis à leur sécurisation, et la mise en place d’un modèle permet de simplifier les contrôles, notamment lors des campagnes de revue. Il est en effet bien plus aisé pour un manager de valider l’attribution d’un rôle métier parlant, que celle d’une transaction à la dénomination très technique.</p>
<p>&nbsp;</p>
<figure id="post-14855 media-14855" class="align-none"><img loading="lazy" decoding="async" class="size-medium wp-image-14855 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2020/12/1-1-437x185.png" alt="" width="437" height="185" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2020/12/1-1-437x185.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2020/12/1-1-71x30.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2020/12/1-1-768x325.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2020/12/1-1.png 1152w" sizes="auto, (max-width: 437px) 100vw, 437px" /></figure>
<p>&nbsp;</p>
<h2 style="text-align: justify;">Panorama des modèles possibles</h2>
<h3 style="text-align: justify;">DAC : Discretionary Access Control, ou pas de modèle !</h3>
<p style="text-align: justify;">Et si le meilleur modèle était l’absence de modèle ? Dans certains cas limités, en particulier si le nombre de permissions ou d’utilisateurs est très restreint, on peut très bien se passer de concevoir un modèle qui viendrait ajouter une couche de complexité non nécessaire. Cela suppose néanmoins que les permissions applicatives soient suffisamment explicites.</p>
<p>&nbsp;</p>
<figure id="post-14857 media-14857" class="align-none"><img loading="lazy" decoding="async" class="size-medium wp-image-14857 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2020/12/2-1-437x183.png" alt="" width="437" height="183" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2020/12/2-1-437x183.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2020/12/2-1-71x30.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2020/12/2-1.png 646w" sizes="auto, (max-width: 437px) 100vw, 437px" /></figure>
<p>&nbsp;</p>
<h3 style="text-align: justify;">RBAC : Role-Based Access Control</h3>
<p style="text-align: justify;">Le modèle RBAC permet de regrouper en « rôles » les habilitations nécessaires à l’exercice d’une fonction au sein une entreprise (métier, mission, projet…). Ces rôles sont alors attribués en lieu et place des habilitations discrétionnaires. Ils peuvent être organisés hiérarchiquement, par exemple en subdivisant des « rôles métier » en « rôles applicatifs ».</p>
<p>&nbsp;</p>
<figure id="post-14859 media-14859" class="align-none"><img loading="lazy" decoding="async" class="size-medium wp-image-14859 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2020/12/3-1-437x155.png" alt="" width="437" height="155" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2020/12/3-1-437x155.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2020/12/3-1-71x25.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2020/12/3-1.png 713w" sizes="auto, (max-width: 437px) 100vw, 437px" /></figure>
<p>&nbsp;</p>
<h3 style="text-align: justify;">OrBAC : Organization-Based Access Control</h3>
<p style="text-align: justify;">Le modèle OrBAC est une variante du modèle RBAC dans laquelle les entités qui composent une entreprise sont un des axes de modélisation. Chaque utilisateur a alors un ou plusieurs rôles en fonction de son appartenance à une direction, un service ou une équipe.</p>
<p>&nbsp;</p>
<figure id="post-14861 media-14861" class="align-none"><img loading="lazy" decoding="async" class="size-medium wp-image-14861 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2020/12/4-437x150.png" alt="" width="437" height="150" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2020/12/4-437x150.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2020/12/4-71x24.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2020/12/4.png 729w" sizes="auto, (max-width: 437px) 100vw, 437px" /></figure>
<p>&nbsp;</p>
<h3 style="text-align: justify;">ABAC : Attribute-Based Access Control</h3>
<p style="text-align: justify;">L’attribution des habilitations via le modèle ABAC se fait grâce à un ensemble de règles qui se basent sur des attributs liés aux utilisateurs, aux ressources elles-mêmes, ou bien à l’environnement. Cette attribution est souvent « dynamique », c’est-à-dire que l’autorisation ou non d’accéder à une application ou une partie d’une application est évaluée au moment où l’utilisateur tente d’y accéder. Dans les faits, il est possible de mettre en place un modèle ABAC tirant parti des rôles d’un utilisateur, comme dans le modèle RBAC.</p>
<p>&nbsp;</p>
<figure id="post-14863 media-14863" class="align-none"><img loading="lazy" decoding="async" class="size-medium wp-image-14863 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2020/12/5-437x156.png" alt="" width="437" height="156" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2020/12/5-437x156.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2020/12/5-71x25.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2020/12/5-768x275.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2020/12/5.png 777w" sizes="auto, (max-width: 437px) 100vw, 437px" /></figure>
<p>&nbsp;</p>
<h3 style="text-align: justify;">GraphBAC : Graph-Based Access Control</h3>
<p style="text-align: justify;">Le modèle GraphBAC ou GBAC repose sur la représentation des habilitations à l’aide d’un graphe liant entre eux des objets (fichier, compte utilisateur, …) grâce à des relations diverses (lien entre manager et managé, appartenance à une structure, possession d’un fichier…). Les habilitations sont alors le résultat de requêtes sur ce graphe, ce qui permet de donner accès à une ressource suivant sa relation avec d’autres objets.</p>
<p>&nbsp;</p>
<figure id="post-14865 media-14865" class="align-none"><img loading="lazy" decoding="async" class="size-medium wp-image-14865 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2020/12/6-355x191.png" alt="" width="355" height="191" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2020/12/6-355x191.png 355w, https://www.riskinsight-wavestone.com/wp-content/uploads/2020/12/6-71x39.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2020/12/6.png 747w" sizes="auto, (max-width: 355px) 100vw, 355px" /></figure>
<p>&nbsp;</p>
<h2 style="text-align: justify;">Vision du marché</h2>
<p style="text-align: justify;">Le tableau ci-dessous compare de manière très synthétique les différents modèles d’habilitation que nous venons de voir.</p>
<table class=" aligncenter" style="width: 601px;" width="601">
<tbody>
<tr>
<td width="120"><strong>Modèle d’habilitation</strong></td>
<td width="120"><strong>Facilité de mise en œuvre et de gestion du modèle</strong></td>
<td width="120"><strong>Possibilités</strong></td>
<td width="120"><strong>Présence sur le marché</strong></td>
<td width="120"><strong>Tendance</strong></td>
</tr>
<tr>
<td width="120">Aucun modèle</td>
<td width="120">n/a</td>
<td width="120">&#8212;</td>
<td width="120">Marginale</td>
<td width="120">⇓</td>
</tr>
<tr>
<td width="120">RBAC</td>
<td width="120">+</td>
<td width="120">+</td>
<td width="120">Très fréquente</td>
<td width="120">⇒</td>
</tr>
<tr>
<td width="120">OrBAC</td>
<td width="120">+</td>
<td width="120">+</td>
<td width="120">Fréquente</td>
<td width="120">⇒</td>
</tr>
<tr>
<td width="120">ABAC</td>
<td width="120">&#8211;</td>
<td width="120">++</td>
<td width="120">Rare</td>
<td width="120">⇑</td>
</tr>
<tr>
<td width="120">GraphBAC</td>
<td width="120">&#8211;</td>
<td width="120">++</td>
<td width="120">Très rare</td>
<td width="120">⇑</td>
</tr>
</tbody>
</table>
<h1></h1>
<p>&nbsp;</p>
<h1 style="text-align: justify;">Les questions les plus fréquentes sur les modèles d’habilitation</h1>
<h2 style="text-align: justify;">À quoi doit servir mon modèle d’habilitation ?</h2>
<p style="text-align: justify;">La mise en place d’un modèle d’habilitation peut s’avérer complexe, coûteuse et chronophage. Il est donc crucial d’étudier en profondeur les besoins et de définir clairement ses attentes. Comme évoqué en introduction, la mise en place d’un modèle d’habilitation peut permettre de répondre aux enjeux de sécurité des accès, aux enjeux réglementaires, mais également de simplifier l’expérience utilisateur et d’améliorer l’efficacité des processus IAM (Identity &amp; Access Management). Un des facteurs clés de succès d’un projet de modélisation des habilitations réside dans la capacité à exprimer ses attentes précisément, à l’aide d’indicateurs chiffrés le cas échéant : réduire le temps nécessaire à la création des accès par un manager lors de l’arrivée d’un collaborateur à 15 min, atténuer 90% des risques considérés critiques, etc.</p>
<h2 style="text-align: justify;">Qui impliquer pour construire, instancier et faire vivre mon modèle ?</h2>
<p style="text-align: justify;">Vu le caractère transversal et l’ampleur de la transformation induite par un changement ou une création de modèle d’habilitation, il est nécessaire de prévoir une gouvernance forte.</p>
<p style="text-align: justify;">Il est préférable d’impliquer un sponsor à forte visibilité auprès du COMEX, qui saura apporter son appui, et qui permettra d’obtenir une adhésion forte de la part du Métier, premier concerné par les changements, et des responsables applicatifs, qui seront fortement sollicités lors de la conception et de la mise en œuvre. On peut également identifier des relais clés, qui viendront apporter leur aide au sein des différentes équipes de l’organisation (RH, DSI, Contrôle Interne…).</p>
<p style="text-align: justify;">Au-delà de la phase projet, il faut également identifier les acteurs qui seront en charge de faire vivre le modèle. Un facteur clé de succès de la mise en place d’un modèle d’habilitation est l’identification des propriétaires des rôles. Si chaque rôle ne comprend que des permissions d’une seule application, on peut facilement se tourner vers le responsable d’application, mais dans la plupart des cas, chaque rôle est composé de permissions provenant d’applications diverses.</p>
<p style="text-align: justify;">L’idéal est de trouver une personne qui a à la fois la connaissance des processus métiers, de l’organisation de l’entreprise, des applications, et une compréhension des règles de sécurité : c’est un exercice difficile ! À défaut, une petite équipe combinant les différentes expertises doit permettre d’assurer cette fonction.</p>
<h2 style="text-align: justify;">Dois-je couvrir les « droits fins » ? Les « périmètres » ? Quelle granularité pour mon modèle ?</h2>
<p style="text-align: justify;">Le monde des habilitations est aussi vaste que la multitude des applications existantes, et les cas d’usage qu’un modèle d’habilitation doit couvrir sont nombreux.</p>
<p style="text-align: justify;">La question des droits fins et de la gestion des périmètres revient régulièrement sur la table lors de la phase de conception. Faut-il, ou non, les inclure dans son modèle ? Il n’existe pas de réponse prédéfinie.</p>
<p style="text-align: justify;">Il est parfaitement envisageable dans certains cas de n’inclure dans le modèle que l’accès à l’application, et de laisser la gestion des droits fins et des périmètres à la main du responsable applicatif et de son équipe, en précisant uniquement les accès demandés dans un champ libre lors de la demande. On perd alors en auditabilité, mais on gagne en simplification de la gestion des demandes.</p>
<p style="text-align: justify;">Si l’on décide d’inclure la notion de périmètre, il faut alors choisir entre une implémentation croisée, dans laquelle on crée autant de droits que de croisements permission-périmètre, ce qui risque de créer un nombre important de rôles, et une implémentation séparée, où on crée d’une part les permissions, et d’autre part les périmètres.</p>
<p style="text-align: justify;">Il est probablement préférable d’aborder le problème séparément, quitte à créer les rôles combinés avec leur périmètre dans un second temps, en fonction des usages identifiés : le modèle qui en découle a ainsi une volumétrie plus limitée.</p>
<h2 style="text-align: justify;">Que dois-je inclure dans mon modèle ? Quid des accès physiques et des <em>assets</em> physiques ?</h2>
<p style="text-align: justify;">Inclure l’ensemble des habilitations au sein de son modèle est extrêmement difficile, voire impossible, d’une part au vu de la grande diversité des cas existants, d’autre part pour des raisons d’efficacité du projet.</p>
<p style="text-align: justify;">Il faut sans cesse garder en ligne de mire l’objectif de la mise en place d’un modèle. Ainsi par exemple, si le but est l’amélioration de l’expérience utilisateur lors des demandes de droits, il vaut mieux prioriser le traitement des permissions orientées vers le métier, qui seront susceptibles d’être attribuées fréquemment, par rapport à des permissions techniques peu utilisées.</p>
<p style="text-align: justify;">Par ailleurs, il peut être tentant d’inclure dans son modèle d’habilitation les accès physiques (locaux, salles spécifiques…) ou les <em>assets</em> physiques (badge, PC, téléphone…) car ils font partie – au même titre que les accès logiques – des moyens dont doivent disposer les collaborateurs pour travailler.</p>
<p style="text-align: justify;">Ici encore, il n’y a pas d’interdit majeur, et des sociétés gèrent par exemple les accès à leurs locaux au sein de leur modèle d’habilitation. Néanmoins, en règle générale, les accès et <em>assets</em> physiques n’en font pas partie en tant que telles.</p>
<p style="text-align: justify;">Pour autant, la solution IAM peut contribuer à leur bonne gestion avec par exemple :</p>
<ul style="text-align: justify;">
<li>Un rôle de centralisateur de demandes, envoyées à différents acteurs ou systèmes lors de l’arrivée d’un collaborateur. Ce « package d’arrivée » comporte alors aussi bien des accès logiques (comptes et droits par défaut) que des ressources physiques.</li>
<li>Un rôle de référent des données et évènements relatifs à une personne. Ces informations, en particulier les dates d’arrivée/départ sont partagées avec les systèmes de gestion des badges pour en gérer le cycle de vie.</li>
</ul>
<p>&nbsp;</p>
<p style="text-align: justify;"><em>Nous venons d’aborder quatre premières questions pour mener à bien un projet de refonte de modèle d’habilitation. D’autres questions seront détaillées dans un second article, à venir très prochainement.</em></p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/2020/12/refondre-son-modele-dhabilitation-les-questions-essentielles-1-2/">Refondre son modèle d’habilitation : les questions essentielles (1/2)</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com">RiskInsight</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
