{"id":808023,"date":"2026-05-13T11:02:03","date_gmt":"2026-05-13T11:02:03","guid":{"rendered":"https:\/\/www.ninjaone.com\/?post_type=script_hub&#038;p=808023"},"modified":"2026-05-13T11:02:03","modified_gmt":"2026-05-13T11:02:03","slug":"como-desativar-a-conta-local-no-windows-powershell","status":"publish","type":"script_hub","link":"https:\/\/www.ninjaone.com\/pt-br\/script-hub\/como-desativar-a-conta-local-no-windows-powershell\/","title":{"rendered":"Como desativar uma conta local no Windows usando o PowerShell"},"content":{"rendered":"<p>Os profissionais de TI e os provedores de servi\u00e7os gerenciados (MSPs) conhecem o procedimento: \u00c0s vezes, \u00e9 necess\u00e1rio <strong>desativar uma conta local em um computador Windows<\/strong> por motivos de seguran\u00e7a, conformidade ou outros motivos operacionais. \u00c9 claro que existem ferramentas de GUI integradas para isso, mas quando voc\u00ea est\u00e1 gerenciando v\u00e1rios sistemas, a automa\u00e7\u00e3o \u00e9 fundamental. Hoje, vamos nos aprofundar em um script do PowerShell desenvolvido para automatizar essa tarefa, tornando-a mais r\u00e1pida, mais segura e f\u00e1cil de repetir.<\/p>\n<p>O script permite desativar uma conta local no Windows por meio do PowerShell. Esse script do PowerShell \u00e9 voltado especificamente para quem est\u00e1 procurando como desativar um usu\u00e1rio do sistema operacional Windows por meio do PowerShell ou para quem est\u00e1 se perguntando como desativar uma conta local no Windows. Portanto, sem mais delongas, vamos analisar esse script.<\/p>\n<h2>O roteiro<\/h2>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"powershell\">#Requires -Version 5.1\r\n\r\n&lt;#\r\n.SYNOPSIS\r\n    Disable a local account\r\n.DESCRIPTION\r\n    Disable a local account\r\n.EXAMPLE\r\n     -UserName \"AdminTest\"\r\n    Disables the account AdminTest\r\n.EXAMPLE\r\n    PS C:&gt; Disable-LocalAdminAccount.ps1 -UserName \"Administrator\"\r\n    Disables the account AdminTest\r\n.OUTPUTS\r\n    None\r\n    String[]\r\n.NOTES\r\n    Minimum OS Architecture Supported: Windows 10, Windows Server 2016\r\n    Release Notes:\r\n    Initial Release\r\n    (c) 2023 NinjaOne\r\n    By 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    LocalBuiltInAccountManagement\r\n#&gt;\r\n\r\n[CmdletBinding()]\r\nparam (\r\n    # User name of a local account\r\n    [Parameter(Mandatory = $true)]\r\n    [String]\r\n    $UserName\r\n)\r\n\r\nbegin {\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}\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    if ($(Get-Command -Name \"Disable-LocalUser\" -ErrorAction SilentlyContinue)) {\r\n        # Disables $UserName using Disable-LocalUser\r\n        try {\r\n            Disable-LocalUser $UserName -Confirm:$false\r\n        }\r\n        catch {\r\n            Write-Error $_\r\n            exit 1\r\n        }\r\n    }\r\n    else {\r\n        # Disables $UserName using net.exe\r\n        net.exe user $UserName \/active:no\r\n        if ($LASTEXITCODE -gt 0) {\r\n            exit 1\r\n        }\r\n    }\r\n}\r\nend {}<\/pre>\n<p>&nbsp;<\/p>\n\n<div class=\"in-context-cta\"><p>Acesse mais de 300 scripts no NinjaOne Dojo<\/p>\n<p><a href=\"https:\/\/www.ninjaone.com\/freetrialform\/\">Obter acesso<\/a><\/p>\n<\/div>\n<h2>Entendendo o roteiro<\/h2>\n<p>Aqui est\u00e1 uma breve sinopse:<\/p>\n<ul>\n<li>O script come\u00e7a testando se est\u00e1 sendo executado com privil\u00e9gios administrativos. Caso contr\u00e1rio, ele ser\u00e1 interrompido e exibir\u00e1 uma mensagem de erro.<\/li>\n<li>Ele verifica a presen\u00e7a do comando <strong>Disable-LocalUser<\/strong> incorporado. Se ele existe, ele o utiliza. Caso contr\u00e1rio, ele recorre ao comando <strong>net.exe user<\/strong> para desativar a conta de usu\u00e1rio.<\/li>\n<\/ul>\n<p>O script exige que a vari\u00e1vel <strong>$UserName<\/strong> seja preenchida. Essa \u00e9 a conta local que voc\u00ea pretende desativar.<\/p>\n<h3><strong>Pr\u00e9-requisitos<\/strong><\/h3>\n<ul>\n<li><strong>Requisitos do sistema operacional<\/strong>: A arquitetura m\u00ednima de sistema operacional suportada inclui o Windows 10 e o Windows Server 2016.<\/li>\n<li><strong>Vers\u00e3o do PowerShell<\/strong>: Requer pelo menos o PowerShell 5.1.<\/li>\n<\/ul>\n<h2>Backup &amp; Restore: Proceda com cautela<\/h2>\n<p>Antes de executar qualquer script do PowerShell que modifique as configura\u00e7\u00f5es do sistema, \u00e9 fundamental fazer backup das configura\u00e7\u00f5es existentes ou, melhor ainda, de todo o sistema. Isso garante que voc\u00ea possa reverter para o estado anterior caso algo d\u00ea errado. Aqui est\u00e3o alguns m\u00e9todos de backup que voc\u00ea pode usar:<\/p>\n<h3>Ponto de restaura\u00e7\u00e3o do sistema<\/h3>\n<p>Criar um ponto de restaura\u00e7\u00e3o do sistema \u00e9 uma maneira f\u00e1cil e eficaz de fazer backup de suas configura\u00e7\u00f5es atuais. Veja como:<\/p>\n<ul>\n<li>Abra o menu Iniciar e procure por &#8220;Criar um ponto de restaura\u00e7\u00e3o&#8221;<\/li>\n<li>Clique no resultado correspondente para abrir a janela Propriedades do sistema.<\/li>\n<li>V\u00e1 para a guia &#8220;Prote\u00e7\u00e3o do sistema&#8221; e clique em &#8220;Criar&#8221;<\/li>\n<li>D\u00ea um nome ao seu ponto de restaura\u00e7\u00e3o e salve-o.<\/li>\n<\/ul>\n<h3>Como fazer um backup completo do sistema<\/h3>\n<p>Para um backup completo, voc\u00ea pode criar uma imagem do sistema:<\/p>\n<ul>\n<li>Abra o Painel de Controle.<\/li>\n<li>Navegue at\u00e9 &#8220;System and Security&#8221; (Sistema e seguran\u00e7a) &gt; &#8220;Backup and Restore (Windows 7)&#8221; (Backup e restaura\u00e7\u00e3o)<\/li>\n<li>No painel esquerdo, clique em &#8220;Create a system image&#8221; (Criar uma imagem do sistema)<\/li>\n<li>Siga o assistente para concluir o backup.<\/li>\n<\/ul>\n<p><strong>Observa\u00e7\u00e3o<\/strong><strong>:<\/strong> Sempre teste o processo de restaura\u00e7\u00e3o para garantir que o backup seja v\u00e1lido.<\/p>\n<h2>Tratamento de erros: O que fazer quando as coisas d\u00e3o errado<\/h2>\n<p>O script do PowerShell inclui o tratamento b\u00e1sico de erros, mas, como em qualquer script, podem ocorrer erros. Veja abaixo alguns erros comuns e dicas de solu\u00e7\u00e3o de problemas:<\/p>\n<p><strong>&#8220;Acesso negado. Por favor, execute com privil\u00e9gios de administrador&#8221;<\/strong><\/p>\n<p>Esse erro ocorrer\u00e1 se voc\u00ea tentar executar o script sem direitos administrativos. Certifique-se de clicar com o bot\u00e3o direito do mouse na janela do PowerShell e escolher &#8220;Executar como administrador&#8221;<\/p>\n<p><strong>A conta de usu\u00e1rio n\u00e3o existe<\/strong><\/p>\n<p>Se voc\u00ea inserir um nome de usu\u00e1rio que n\u00e3o existe, o script emitir\u00e1 um erro. Verifique novamente o nome de usu\u00e1rio e tente outra vez.<\/p>\n<p><strong>O script n\u00e3o \u00e9 executado<\/strong><\/p>\n<p>Se o script n\u00e3o for executado, verifique as configura\u00e7\u00f5es da pol\u00edtica de execu\u00e7\u00e3o do PowerShell. Talvez seja necess\u00e1rio alterar a pol\u00edtica para permitir a execu\u00e7\u00e3o do script. Use o seguinte comando para alter\u00e1-lo:<\/p>\n<p><em>Set-ExecutionPolicy RemoteSigned<\/em><\/p>\n<p>Lembre-se de voltar \u00e0 configura\u00e7\u00e3o original depois de executar o script.<\/p>\n<h2>Tratamento de erros Catch-All<\/h2>\n<p>Se quiser estender o script para registrar os erros em um arquivo de texto para auditoria, modifique o bloco catch no script da seguinte forma:<\/p>\n<p><em>catch { Write-Error $_ &#8220;Erro: $_&#8221; | Out-File &#8220;C:pathtoerrorlog.txt&#8221; -Append exit 1 }<\/em><\/p>\n<p><strong>Observa\u00e7\u00e3o<\/strong>: Substitua &#8220;C:pathtoerrorlog.txt&#8221; pelo caminho desejado para o arquivo de registro.<\/p>\n<p>Ao incorporar esses m\u00e9todos de backup e tratamento de erros, voc\u00ea adiciona uma camada extra de seguran\u00e7a e confiabilidade ao executar o script.<\/p>\n<h2>Como isso pode ser \u00fatil?<\/h2>\n<h3><strong>Para profissionais de TI:<\/strong><\/h3>\n<ul>\n<li><strong>Seguran\u00e7a<\/strong>: Se voc\u00ea estiver gerenciando a infraestrutura de TI de uma organiza\u00e7\u00e3o, \u00e9 fundamental saber como desativar uma conta local no Windows. Contas n\u00e3o autorizadas ou redundantes s\u00e3o riscos \u00e0 seguran\u00e7a.<\/li>\n<li><strong>Conformidade<\/strong>: A conformidade regulamentar geralmente exige a desativa\u00e7\u00e3o de determinadas contas. A automa\u00e7\u00e3o desse processo garante que nenhuma etapa seja perdida.<\/li>\n<li><strong>Automa\u00e7\u00e3o e escalabilidade<\/strong>: O script pode ser inclu\u00eddo como parte de uma sequ\u00eancia de automa\u00e7\u00e3o maior, facilitando a desativa\u00e7\u00e3o de contas em v\u00e1rias m\u00e1quinas simultaneamente.<\/li>\n<\/ul>\n<h3><strong>Para MSPs:<\/strong><\/h3>\n<ul>\n<li><strong>Multitenancy<\/strong>: Os MSPs podem integrar facilmente esse script em seus sistemas de gerenciamento centralizado. Isso simplifica o gerenciamento de v\u00e1rios clientes em um \u00fanico painel.<\/li>\n<li><strong>Efici\u00eancia operacional<\/strong>: O recurso de automa\u00e7\u00e3o desse script do PowerShell reduz a sobrecarga operacional.<\/li>\n<li><strong>SLAs e satisfa\u00e7\u00e3o do cliente<\/strong>: A automa\u00e7\u00e3o garante tempos de resposta mais r\u00e1pidos e o cumprimento dos SLAs, o que se traduz diretamente em satisfa\u00e7\u00e3o do cliente.<\/li>\n<\/ul>\n<h2>Considera\u00e7\u00f5es finais<\/h2>\n<p>Quando se trata de gerenciar contas locais, o script <strong>Disable-LocalAdminAccount.ps1<\/strong> \u00e9 uma ferramenta poderosa que voc\u00ea deve ter em seu arsenal.\u00a0Aproveite o poder da automa\u00e7\u00e3o e aprimore suas medidas de seguran\u00e7a integrando esse script aos seus fluxos de trabalho. Afinal, no atual cen\u00e1rio de TI em ritmo acelerado, a automa\u00e7\u00e3o n\u00e3o \u00e9 apenas um luxo, \u00e9 uma necessidade.<\/p>\n","protected":false},"author":35,"featured_media":142064,"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":[12435],"class_list":["post-808023","script_hub","type-script_hub","status-publish","has-post-thumbnail","hentry","script_hub_category-windows"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.ninjaone.com\/pt-br\/wp-json\/wp\/v2\/script_hub\/808023","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ninjaone.com\/pt-br\/wp-json\/wp\/v2\/script_hub"}],"about":[{"href":"https:\/\/www.ninjaone.com\/pt-br\/wp-json\/wp\/v2\/types\/script_hub"}],"author":[{"embeddable":true,"href":"https:\/\/www.ninjaone.com\/pt-br\/wp-json\/wp\/v2\/users\/35"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ninjaone.com\/pt-br\/wp-json\/wp\/v2\/comments?post=808023"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.ninjaone.com\/pt-br\/wp-json\/wp\/v2\/media\/142064"}],"wp:attachment":[{"href":"https:\/\/www.ninjaone.com\/pt-br\/wp-json\/wp\/v2\/media?parent=808023"}],"wp:term":[{"taxonomy":"script_hub_category","embeddable":true,"href":"https:\/\/www.ninjaone.com\/pt-br\/wp-json\/wp\/v2\/operating_system?post=808023"},{"taxonomy":"use_cases","embeddable":true,"href":"https:\/\/www.ninjaone.com\/pt-br\/wp-json\/wp\/v2\/use_cases?post=808023"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}