{"id":209909,"date":"2024-03-01T12:46:11","date_gmt":"2024-03-01T12:46:11","guid":{"rendered":"https:\/\/www.ninjaone.com\/?post_type=script_hub&#038;p=209909"},"modified":"2024-03-01T12:46:11","modified_gmt":"2024-03-01T12:46:11","slug":"powershell-modifier-message-connexion","status":"publish","type":"script_hub","link":"https:\/\/www.ninjaone.com\/fr\/script-hub\/powershell-modifier-message-connexion\/","title":{"rendered":"Powershell\u00a0: comment modifier les messages de connexion sous Windows"},"content":{"rendered":"<h2>Principaux points \u00e0 retenir<\/h2>\n<ul>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"1\" data-aria-level=\"1\">La personnalisation des messages de connexion dans Windows am\u00e9liore la s\u00e9curit\u00e9 et l&rsquo;exp\u00e9rience de l&rsquo;utilisateur.<\/li>\n<li>Le script PowerShell fourni offre une m\u00e9thode rapide pour mettre \u00e0 jour les titres et les messages de connexion.<\/li>\n<li>Des privil\u00e8ges d&rsquo;administrateur sont requis en raison des modifications apport\u00e9es au registre du syst\u00e8me.<\/li>\n<li>Le script est compatible avec Windows\u00a010 et Windows Server\u00a02016.<\/li>\n<li>Bien que les objets de strat\u00e9gie de groupe puissent effectuer des t\u00e2ches similaires, ce script permet des ajustements plus rapides et plus souples.<\/li>\n<li>Une utilisation abusive, comme le partage d&rsquo;informations sensibles par le biais de messages de connexion, peut constituer une menace pour la s\u00e9curit\u00e9.<\/li>\n<li>Testez toujours le script dans un environnement de test (sandbox) avant de le d\u00e9ployer \u00e0 grande \u00e9chelle.<\/li>\n<li>Des plateformes comme NinjaOne facilitent encore davantage la gestion et le d\u00e9ploiement de ces scripts sur de vastes r\u00e9seaux.<\/li>\n<\/ul>\n<p>Face \u00e0 l&rsquo;\u00e9volution constante des besoins en mati\u00e8re de s\u00e9curit\u00e9 et d&rsquo;am\u00e9lioration de l&rsquo;exp\u00e9rience des utilisateurs, les administrateurs informatiques sont \u00e0 la recherche d&rsquo;outils plus perfectionn\u00e9s pour g\u00e9rer efficacement les syst\u00e8mes. La personnalisation des messages de connexion dans Windows est un domaine souvent n\u00e9glig\u00e9 alors qu\u2019il est pourtant essentiel. En effet, la possibilit\u00e9 <strong>modifier les messages de connexion dans Windows<\/strong>\u00a0 permet de communiquer les informations n\u00e9cessaires aux utilisateurs, de renforcer la s\u00e9curit\u00e9 et de personnaliser un peu plus un environnement d&rsquo;entreprise.<\/p>\n<h2>Contexte<\/h2>\n<p>Aujourd&rsquo;hui, notre discussion s\u2019articule autour d\u2019un script PowerShell con\u00e7u pour mettre \u00e0 jour le message de connexion sur les syst\u00e8mes Windows. Ce script, court mais puissant, souligne un m\u00e9lange de s\u00e9curit\u00e9 et d&rsquo;am\u00e9lioration de l&rsquo;exp\u00e9rience de l&rsquo;utilisateur. En contr\u00f4lant le titre et le message que les utilisateurs voient lorsqu&rsquo;ils se connectent, les professionnels de l&rsquo;informatique et les fournisseurs de services g\u00e9r\u00e9s (MSP) peuvent relayer des mises \u00e0 jour critiques, des avertissements ou simplement assurer la coh\u00e9sion de la marque sur l&rsquo;ensemble du parc de machines dont ils ont la charge.<\/p>\n<h2>Le script PowerShell<\/h2>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"powershell\">#Requires -Version 5.1\r\n\r\n&lt;#\r\n.SYNOPSIS\r\n    Changes the logon title and message.\r\n.DESCRIPTION\r\n    Changes the logon title and message.\r\n.EXAMPLE\r\n     -Title \"My Title\" -Message \"My Logon Message\"\r\n    Set the title and message.\r\n.EXAMPLE\r\n    PS C:&gt; Set-LogonMessage.ps1 -Title \"My Title\" -Message \"My Logon Message\"\r\n    Set the title and message.\r\n.OUTPUTS\r\n    None\r\n.NOTES\r\n    Minimum OS Architecture Supported: Windows 10, Windows Server 2016\r\n    Release Notes: Renamed script and added Script Variable support, updated Set-ItemProp\r\nBy using this script, you indicate your acceptance of the following legal terms as well as our Terms of Use at https:\/\/www.ninjaone.com\/terms-of-use.\r\n    Ownership Rights: NinjaOne owns and will continue to own all right, title, and interest in and to the script (including the copyright). NinjaOne is giving you a limited license to use the script in accordance with these legal terms. \r\n    Use Limitation: You may only use the script for your legitimate personal or internal business purposes, and you may not share the script with another party. \r\n    Republication Prohibition: Under no circumstances are you permitted to re-publish the script in any script library or website belonging to or under the control of any other software provider. \r\n    Warranty Disclaimer: The script is provided \u201cas is\u201d and \u201cas available\u201d, without warranty of any kind. NinjaOne makes no promise or guarantee that the script will be free from defects or that it will meet your specific needs or expectations. \r\n    Assumption of Risk: Your use of the script is at your own risk. You acknowledge that there are certain inherent risks in using the script, and you understand and assume each of those risks. \r\n    Waiver and Release: You will not hold NinjaOne responsible for any adverse or unintended consequences resulting from your use of the script, and you waive any legal or equitable rights or remedies you may have against NinjaOne relating to your use of the script. \r\n    EULA: If you are a NinjaOne customer, your use of the script is subject to the End User License Agreement applicable to you (EULA).\r\n.COMPONENT\r\n    OSSecurity\r\n#&gt;\r\n\r\n[CmdletBinding()]\r\nparam (\r\n    [Parameter()]\r\n    [String]$Title,\r\n    [Parameter()]\r\n    [String]$Message\r\n)\r\n\r\nbegin {\r\n    if ($env:title -and $env:title -notlike \"null\") {\r\n        $Title = $env:title\r\n    }\r\n\r\n    if ($env:message -and $env:message -notlike \"null\") {\r\n        $Message = $env:Message\r\n    }\r\n    function Test-IsElevated {\r\n        $id = [System.Security.Principal.WindowsIdentity]::GetCurrent()\r\n        $p = New-Object System.Security.Principal.WindowsPrincipal($id)\r\n        if ($p.IsInRole([System.Security.Principal.WindowsBuiltInRole]::Administrator))\r\n        { Write-Output $true }\r\n        else\r\n        { Write-Output $false }\r\n    }\r\n    function Set-ItemProp {\r\n        param (\r\n            $Path,\r\n            $Name,\r\n            $Value,\r\n            [ValidateSet(\"DWord\", \"QWord\", \"String\", \"ExpandedString\", \"Binary\", \"MultiString\", \"Unknown\")]\r\n            $PropertyType = \"DWord\"\r\n        )\r\n        # Do not output errors and continue\r\n        $ErrorActionPreference = [System.Management.Automation.ActionPreference]::SilentlyContinue\r\n        if (-not $(Test-Path -Path $Path)) {\r\n            # Check if path does not exist and create the path\r\n            New-Item -Path $Path -Force | Out-Null\r\n        }\r\n        if ((Get-ItemProperty -Path $Path -Name $Name)) {\r\n        # Update property and print out what it was changed from and changed to\r\n            $CurrentValue = Get-ItemProperty -Path $Path -Name $Name\r\n            try {\r\n                Set-ItemProperty -Path $Path -Name $Name -Value $Value -Force -Confirm:$false -ErrorAction Stop | Out-Null\r\n            }\r\n            catch {\r\n                Write-Error $_\r\n            }\r\n            Write-Host \"$Path$Name changed from $CurrentValue to $(Get-ItemProperty -Path $Path -Name $Name)\"\r\n        }\r\n        else {\r\n            # Create property with value\r\n            try {\r\n                New-ItemProperty -Path $Path -Name $Name -Value $Value -PropertyType $PropertyType -Force -Confirm:$false -ErrorAction Stop | Out-Null\r\n            }\r\n            catch {\r\n                Write-Error $_\r\n            }\r\n            Write-Host \"Set $Path$Name to $(Get-ItemProperty -Path $Path -Name $Name)\"\r\n        }\r\n        $ErrorActionPreference = [System.Management.Automation.ActionPreference]::Continue\r\n    }\r\n}\r\nprocess {\r\n    if (-not (Test-IsElevated)) {\r\n        Write-Error -Message \"Access Denied. Please run with Administrator privileges.\"\r\n        exit 1\r\n    }\r\n    try {\r\n        Set-ItemProp -Path \"HKLM:SOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystem\" -Name \"legalnoticecaption\" -Value $Title -PropertyType String\r\n        Set-ItemProp -Path \"HKLM:SOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystem\" -Name \"legalnoticetext\" -Value $Message -PropertyType String\r\n    }\r\n    catch {\r\n        Write-Error $_\r\n        exit 1\r\n    }\r\n}\r\nend {\r\n    \r\n    \r\n    \r\n}<\/pre>\n<p>&nbsp;<\/p>\n\n<div class=\"in-context-cta\"><p style=\"text-align: center;\">Acc\u00e9dez \u00e0 plus de 700\u00a0scripts dans le Dojo NinjaOne<\/p>\n<p style=\"text-align: center;\"><a href=\"https:\/\/www.ninjaone.com\/freetrialform\/\">Obtenir l&rsquo;acc\u00e8s<\/a><\/p>\n<\/div>\n<h2>Description d\u00e9taill\u00e9e<\/h2>\n<p>Penchons-nous sur les m\u00e9canismes du script\u00a0:<\/p>\n<ul>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"1\" data-aria-level=\"1\"><strong>Liaison et param\u00e8tres de la cmdlet<\/strong>\u00a0: Le script est con\u00e7u comme une fonction PowerShell utilisant l&rsquo;attribut CmdletBinding. Cela signifie que le script peut \u00eatre utilis\u00e9 comme une fonction r\u00e9utilisable et qu&rsquo;il peut accepter des param\u00e8tres, et notamment le titre et le message de l&rsquo;invite de connexion.<\/li>\n<li><strong>Contr\u00f4le administrateur<\/strong>\u00a0: Deux fonctions int\u00e9gr\u00e9es sont utilis\u00e9es, <strong>Test-IsElevated<\/strong> et <strong>Set-ItemProp.<\/strong> Le premier v\u00e9rifie si le script est ex\u00e9cut\u00e9 avec des privil\u00e8ges d&rsquo;administrateur, ce qui est vital puisque la modification des cl\u00e9s de registre (ce que fait le script) n\u00e9cessite des autorisations \u00e9lev\u00e9es.<\/li>\n<li><strong>Modifications du registre<\/strong>\u00a0: La fonction <strong>Set-ItemProp<\/strong> modifie les valeurs de registre existantes ou en cr\u00e9e de nouvelles. Le script cible deux cl\u00e9s primaires, <strong>legalnoticecaption<\/strong> (pour le titre) et <strong>legalnoticetext<\/strong> (pour le message), qui r\u00e9gissent le message de connexion sous Windows.<\/li>\n<\/ul>\n<h2>Cas d&rsquo;utilisation potentiels<\/h2>\n<p>Imaginez qu&rsquo;un administrateur informatique d&rsquo;une entreprise internationale veuille avertir tous les utilisateurs d&rsquo;une maintenance serveur \u00e0 venir. Plut\u00f4t que de s&rsquo;en remettre \u00e0 des courriels qui risquent d&rsquo;\u00eatre ignor\u00e9s, il d\u00e9ploie ce script sur tous les postes de travail. Lorsque les employ\u00e9s se connectent le lendemain, ils sont accueillis par l&rsquo;alerte, ce qui garantit une visibilit\u00e9 maximale.<\/p>\n<h2>Comparaisons<\/h2>\n<p>Bien que les <a href=\"https:\/\/www.techtarget.com\/searchwindowsserver\/definition\/Group-Policy-Object\/\" target=\"_blank\" rel=\"noopener\">objets de strat\u00e9gie de groupe (GPO)<\/a> puissent \u00e9galement \u00eatre utilis\u00e9s pour d\u00e9finir les messages de connexion, ce script offre une approche plus souple. Les GPO peuvent mettre du temps \u00e0 se propager et ne pas \u00eatre adapt\u00e9s \u00e0 des changements rapides. Le script PowerShell, quant \u00e0 lui, peut \u00eatre rapidement ex\u00e9cut\u00e9 machine par machine ou d\u00e9ploy\u00e9 \u00e0 grande \u00e9chelle via un outil de gestion de syst\u00e8me.<\/p>\n<h2>FAQ<\/h2>\n<ul>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"1\" data-aria-level=\"1\"><strong>Ce script peut-il \u00eatre ex\u00e9cut\u00e9 sur n&rsquo;importe quelle machine Windows\u00a0?\u00a0<\/strong><br \/>\nIl est con\u00e7u pour Windows\u00a010 et Windows Server\u00a02016 et ult\u00e9rieur. Les versions ant\u00e9rieures peuvent ne pas prendre en charge les cmdlets concern\u00e9s.<\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"2\" data-aria-level=\"1\"><strong>Est-il n\u00e9cessaire d&rsquo;ex\u00e9cuter le script avec des droits d&rsquo;administrateur\u00a0?\u00a0<\/strong><br \/>\nOui, \u00e9tant donn\u00e9 qu&rsquo;il modifie le registre du syst\u00e8me, des autorisations \u00e9lev\u00e9es sont n\u00e9cessaires.<\/li>\n<\/ul>\n<h2>Implications<\/h2>\n<p>Si le script facilite la communication et l&rsquo;image de marque, son utilisation abusive peut entra\u00eener de la confusion, voire des probl\u00e8mes de s\u00e9curit\u00e9. Il est d\u00e9conseill\u00e9 de diffuser des informations sensibles dans un message de connexion. En outre, des changements fr\u00e9quents peuvent d\u00e9sensibiliser les utilisateurs \u00e0 ces messages, ce qui risque d&rsquo;en diminuer l&rsquo;impact.<\/p>\n<h2>Recommandations<\/h2>\n<ul>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"1\" data-aria-level=\"1\">Veillez \u00e0 la clart\u00e9 et \u00e0 la concision de vos messages de connexion.<\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"1\" data-aria-level=\"1\">Testez le script dans un environnement contr\u00f4l\u00e9 avant de le d\u00e9ployer \u00e0 grande \u00e9chelle.<\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"1\" data-aria-level=\"1\">Conservez des sauvegardes r\u00e9guli\u00e8res du registre de votre syst\u00e8me.<\/li>\n<\/ul>\n<h2>Conclusion<\/h2>\n<p>L&rsquo;utilisation d&rsquo;outils tels que ce script ne repr\u00e9sente qu\u2019une fraction de la bo\u00eete \u00e0 outils <a href=\"https:\/\/www.ninjaone.com\/fr\/rmm\/it-operations-management-software\">compl\u00e8te de la gestion informatique<\/a>. Des plateformes comme NinjaOne d\u00e9cuplent ces efforts en fournissant un environnement int\u00e9gr\u00e9 pour le <a href=\"https:\/\/www.ninjaone.com\/fr\/deploiement-de-logiciels\">d\u00e9ploiement, la gestion et la surveillance de scripts de<\/a> ce type sur de vastes r\u00e9seaux, garantissant ainsi la coh\u00e9rence, la s\u00e9curit\u00e9 et l&rsquo;am\u00e9lioration de l&rsquo;exp\u00e9rience de l&rsquo;utilisateur.<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"author":35,"featured_media":144883,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"_relevanssi_hide_post":"","_relevanssi_hide_content":"","_relevanssi_pin_for_all":"","_relevanssi_pin_keywords":"","_relevanssi_unpin_keywords":"","_relevanssi_related_keywords":"","_relevanssi_related_include_ids":"","_relevanssi_related_exclude_ids":"","_relevanssi_related_no_append":"","_relevanssi_related_not_related":"","_relevanssi_related_posts":"","_relevanssi_noindex_reason":"","_lmt_disableupdate":"no","_lmt_disable":""},"operating_system":[4212],"use_cases":[4287],"class_list":["post-209909","script_hub","type-script_hub","status-publish","has-post-thumbnail","hentry","script_hub_category-windows"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.ninjaone.com\/fr\/wp-json\/wp\/v2\/script_hub\/209909","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ninjaone.com\/fr\/wp-json\/wp\/v2\/script_hub"}],"about":[{"href":"https:\/\/www.ninjaone.com\/fr\/wp-json\/wp\/v2\/types\/script_hub"}],"author":[{"embeddable":true,"href":"https:\/\/www.ninjaone.com\/fr\/wp-json\/wp\/v2\/users\/35"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ninjaone.com\/fr\/wp-json\/wp\/v2\/comments?post=209909"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.ninjaone.com\/fr\/wp-json\/wp\/v2\/media\/144883"}],"wp:attachment":[{"href":"https:\/\/www.ninjaone.com\/fr\/wp-json\/wp\/v2\/media?parent=209909"}],"wp:term":[{"taxonomy":"script_hub_category","embeddable":true,"href":"https:\/\/www.ninjaone.com\/fr\/wp-json\/wp\/v2\/operating_system?post=209909"},{"taxonomy":"use_cases","embeddable":true,"href":"https:\/\/www.ninjaone.com\/fr\/wp-json\/wp\/v2\/use_cases?post=209909"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}